定时发送邮件

工作中有时需要定时执行某些操作(比如发邮件),我们一般有下面4种方法

1.C#自带Timer定时控件

  操作流程:进入项目的Global.asax.cs文件的Application_Start函数,添加SendEmail功能即可。

  评价:IIS 7应用程序池自动回收,这样就需要有人访问站点才能再次执行定时任务。虽然也有其它补救办法,但是不优雅,放弃。

2.Windows 计划任务+Web Service

  操作流程:1.单独写一个WebService发邮件程序,生成exe。

       2.创建一个Windows计划任务定期调用改exe。

3.SQL Server Agent Mail

  操作流程:1.SQL Server—管理—数据库邮件,根据自己邮件服务器参数配置(端口除外,端口固定为25)完保存。

       2.在SQL Server 系统数据库msdb里面新建一个发送邮件的存储过程,记住@profile_name = 'EmailTest', EmailTest即上一步中配置名。

       3.在SQL Server中建立一个job定时调用该存储过程。

三种方法都测试成功,推荐方法3.

posted on 2016-08-17 18:08  alanVan  阅读(694)  评论(0编辑  收藏  举报

导航