日期:2014-05-18  浏览次数:20402 次

如何处理这个问题(到期后发送邮件给用户)
一个datetime字段的值到当前时间后
执行事件发送邮件给用户

------解决方案--------------------
是一个服务,还是web,还是数据库?
------解决方案--------------------
实现不了
数据库里面能用 作业 可你不能让数据库去发email吧
------解决方案--------------------
你可以在用户访问页面的时候来做这一件事!
------解决方案--------------------
用windows service
------解决方案--------------------
开着一个页面 用time控件不断刷新
---------------------------------------
你写个js一直请求就可以了,但这种方式不好。
写成Window from 或者window 服务,里面用timer跑就行了
------解决方案--------------------
在global.asax里面用timer刷
------解决方案--------------------
<%@ Application Language= "C# " %>
<%@ Import Namespace= "System.Diagnostics " %>
<%@ Import Namespace= "System.Web " %>
<%@ Import Namespace= "B2BTrade.Model " %>
<%@ Import Namespace= "System.Timers " %>
<%@ Import Namespace= "System.IO " %>

<script RunAt= "server " >



private static Timer timerChangeExpired = new Timer();




protected void Application_Start(object sender, EventArgs e)
{

timerChangeExpired.Elapsed += new ElapsedEventHandler(timerChangeExpired_Elapsed);
//你的触发时间 下面是 12小时 * 60 分钟 * 60秒
timerChangeExpired.Interval = 12 * 60 * 60 * 1000 ;


timerChangeExpired.Enabled = true;

GC.KeepAlive(timerChangeExpired);
}




void timerChangeExpired_Elapsed(object sender, ElapsedEventArgs e)
{
//自动过期
try
{
//你的方法判断过期发邮件的方法

}catch(Exception ee)
{
//要处理异常,出错很麻烦
}
}
</script>


------解决方案--------------------
sql server有个job
可以设