电子邮件通讯

时间:2014-01-21 11:56:36

标签: c# asp.net sql-server asp.net-mvc-3

我正在撰写时事通讯。时事通讯内容与每月,每周,每日的频率一起保存在表格中。时事通讯也有开始日期。我要做的是基于数据和频率。通讯通过电子邮件发送给所有订阅者。我的困惑是,我是否需要为此编写一个sql server作业,或者只是asp.net可以这样做。如果是,那么我将如何做到这一点。

2 个答案:

答案 0 :(得分:1)

由于您的Web应用程序将在不活动时终止,您通常会让服务或任务调度程序运行此类定期任务。此外,您的Web应用程序负责快速返回请求,并且应该使用可能对您的作业不够的非常有限的权限集运行(最好不允许应用程序池帐户向大量帐户发送电子邮件)。
在应用程序的便利性和部署方面,有各种不同的替代方案。

除了定期运行作业的能力之外,一个重要的要求是如何跟踪作业中的错误,因此您应该在出现第一个问题之前考虑您的日志记录策略。
除了编写SQL Server作业外,您还可以:

  • 创建一个控制台应用程序并使用Windows任务计划程序定期运行它(间隔是您的日程安排选项的最小值,每天在您的问题中)。这很容易实现,但需要一些步骤将其部署到计算机。
  • 创建安装到计算机的专用Windows服务。虽然这需要更多的工作来创建和测试服务,但您也可以创建一个安装程序来简化部署。

答案 1 :(得分:0)

我最终去了申请活动。我在应用程序事件中设置了计时器,它的工作方式类似于作业和Windows服务。