【发布时间】:2011-05-04 05:58:12
【问题描述】:
一旦报告了事件,我需要向用户发送邮件。邮件应在事件报告时间后 30 分钟发送,然后在事件报告时间后 105 分钟发送,然后在事件报告时间后 225 分钟发送。
我正在使用窗口服务和 C#,但我只需要服务条件来执行代码。
这是我的代码。
protected override void OnStart(string[] args)
{
timer1 = new Timer(1800000);
timer1.Enabled = true;
timer1.Elapsed += new ElapsedEventHandler(Timer1_Event);
}
public void Timer1_Event(object source, ElapsedEventArgs e)
{
if(datetime.now==incidentreportedtime+30mim)
{
//Send mail to user
}
}
我的问题是事件可能随时引发,并且该时间可能与服务执行代码的时间不同。
例如,事件提出时间是下午 12.45,而要发送的邮件是下午 1.15。服务可能在下午 12.50 开始,然后又在下午 1.20 开始,这不等于下午 1.15。与下午 1.20 相同时间的事件可能很少,但并非所有事件都可以考虑发送邮件。
帮帮我。
【问题讨论】:
-
您的问题是什么?看起来像是请求某人为您编写 Windows 服务。
-
我没有得到你所问的问题。你应该问我关于我在那里发布的问题。请帮助我完成这项任务的逻辑。我不需要代码。
-
我想提交一个事件。
-
Chaitanya...你特意要求给你提供逻辑和代码......你的要求似乎很明确......所以这不是一个问题......
-
@chaitanya “我的问题是事件可能随时引发,并且该时间可能与服务执行代码的时间不同。” - 不,这不是一个真正的问题。
标签: c# asp.net sql-server-2005 windows-services