如何制作电子邮件通知程序,如Google日历? [英] How to make an email notifier like google calendar?

查看:165
本文介绍了如何制作电子邮件通知程序,如Google日历?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用




  • asp.net mvc 2.0

  • C#

  • .NET 4.0

  • ms sql server 2005

  • iis 7.0



我想制作一个电子邮件通知系统,就像许多网站都有谷歌一样。我希望用户能够设置一个提醒日期,并且当该日期被击中时,电子邮件被发送给他们。



我不知道该怎么做。 p>

我听说过几种方法,但没有找到任何有关如何做的教程。




  • Windows调度程序

  • 通过ms sql server(think sql server agent?)



使用Windows调度程序,我不认为它将在共享主机环境中工作。我更喜欢如果它是,但如果有很大的不同,那么我可以生活在那个能力。



我也希望在不久的将来支持短信,所以解决方案应该能够扩展,以便尽可能地使用它。

解决方案

这个博客帖子为您的问题提供了一个非常有效的(虽然有些黑客)解决方案,可以在一个共享的托管环境。这是Jeff在StackOverflow中用于为用户分配徽章(我不知道SO是否仍在使用它)。



对于实际发送电子邮件的代码,您应该查看互联网,因为有无关的代码示例。一个可能的答案可能是:

  public void SendEmail()
{
MailMessage loMsg = new MailMessage );

loMsg.From = new MailAddress(from@domain.com);
loMsg.To.Add(new MailAddress(to@domain.com));
loMsg.Subject =主题;
loMsg.Body =Email Body;


var smtp = new SmtpClient
{
Host =smtp.gmail.com,
Port = 587,
EnableSsl =
DeliveryMethod = SmtpDeliveryMethod.Network,
UseDefaultCredentials = false,
Credentials = new System.Net.NetworkCredential(username,password)
};

smtp.Send(loMsg);
}

看看是否有帮助


I am using

  • asp.net mvc 2.0
  • C#
  • .NET 4.0
  • ms sql server 2005
  • iis 7.0

I want to make an email notifier system just like many sites have such as google. I want user to be able to set a reminder date and when that date is hit a email is sent to them.

I am not sure how to do this.

I heard of a couple ways but have not found any tutorials on how to do them.

  • Windows scheduler
  • through ms sql server (think sql server agent?)

With the windows scheduler I don't think it would work on a shared hosting environment. I would prefer if it did but if there is a big difference then I can live with out that ability.

I also want in the very near future to support SMS messages so the solution should be able to expand to work with that as well if possible.

解决方案

This blog post presents a very effective (though somewhat 'hacky') solution to your problem that will work in a shared hosting environment. This is what Jeff used in StackOverflow to assign badges to users (I don't know if SO is still using it though).

For the code to actually send the email, you should look around the Internet since there are endless code examples on how to do that. One possible answer could be:

    public void SendEmail()
    {
        MailMessage loMsg = new MailMessage();

        loMsg.From = new MailAddress("from@domain.com");
        loMsg.To.Add(new MailAddress("to@domain.com"));
        loMsg.Subject = "Subject";
        loMsg.Body = "Email Body";


        var smtp = new SmtpClient
        {
            Host = "smtp.gmail.com",
            Port = 587,
            EnableSsl = true,
            DeliveryMethod = SmtpDeliveryMethod.Network,
            UseDefaultCredentials = false,
            Credentials = new System.Net.NetworkCredential("username", "password")
        };

        smtp.Send(loMsg);
        }

Take a look and see if it helps

这篇关于如何制作电子邮件通知程序,如Google日历?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆