【问题标题】:How to send scheduled email alerts using C#? [closed]如何使用 C# 发送预定的电子邮件警报? [关闭]
【发布时间】:2011-12-18 21:51:02
【问题描述】:

我需要向用户发送电子邮件通知,为此用户插入一个日期,该日期存储在数据库 (MS SQL) 中,然后我的应用程序应在此日期发送电子邮件警报,我该怎么做。 .??

我已经阅读了有关 Windows 服务的信息,并且我尝试做一个,但是没有用,任何人都可以帮助我...??

我正在使用 asp.net、c# 和 MVC 模型

【问题讨论】:

  • 为什么您的 Windows 服务不起作用?
  • 我认为OP的问题是如何比较日期,为了比较日期,服务/计划任务应该多久进行一次检查..
  • @verofairy,让我猜猜,当你的用户回到你身边并且不加说明地抱怨你的程序“不起作用”。
  • 亲爱的:@PirateKitten:我试图做 Windows 服务,但是当我尝试启动它时自动停止,因为它没有做任何事情(它说一个对话框)。 @Bolu:没错,这是我的问题,我还没有使用t know how to compare constantly the date. @Kirk: No, my app isnt
  • @verofairy:检查一下:stackoverflow.com/questions/5157828/…

标签: c# asp.net-mvc email scheduled-tasks


【解决方案1】:

看看使用 System.Net.Mail 命名空间来处理 .NET 生成的邮件:

MailMessage Message = new MailMessage();

Message.Sender = new MailAddress(OutgoingEmailAddress, OutgoingEmailDisplayName);
Message.From = new MailAddress(OutgoingEmailAddress, OutgoingEmailDisplayName);
Message.Subject = "The subject of your email";
Message.Priority = MailPriority.High;

// Add Recipients                    
foreach (string Email in (SuccessRecipientList.Split(';')))
     Message.To.Add(Email);

// Set Body                
Message.Body = Body;

// Send the Email
SmtpClient EmailClient = new SmtpClient("smtpServerNameHere");
EmailClient.Send(Message);

【讨论】:

  • 谢谢迈克尔,但我真正的问题是在特定日期发送它,应该从数据库中挑选。例如,用户插入了他的生日日期,我需要我的应用在他的生日当天向他发送一封祝贺电子邮件。
【解决方案2】:

您可以创建能够从数据库中获取用户详细信息和通知日期并发送通知邮件的控制台应用程序。

您可以使用 windows 计划任务来运行这个exe 文件。

例如每天在给定时间运行此计划任务。您的 如果需要任何通知,应用程序将向用户发送邮件 当天发送。

【讨论】:

    猜你喜欢
    • 2012-11-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-24
    • 1970-01-01
    • 2021-07-02
    • 1970-01-01
    相关资源
    最近更新 更多