我有一个通过辅助角色发送自动邮件的应用程序。 当我在Visual Studio中调试我的应用程序时,我在WorkerRole.cs中设置OnStart()的任务工作正常,我每5分钟收到一封邮件(用于测试目的)。 我在WorkerRole.cs中的代码:
public override bool OnStart()
{
ScheduledTaskTimer.Elapsed += new ElapsedEventHandler(ScheduledTaskTimer_Elapsed);
// ScheduledTaskTimer.Interval = 86400000;
ScheduledTaskTimer.Interval = 180000;
ScheduledTaskTimer.Enabled = true;
return base.OnStart(); }
但是当我部署到Windows Azure时,我的工作角色似乎不起作用。 我从未收到任何邮件..我不知道如何检查工作者角色是否真正在运行..
答案 0 :(得分:1)
您可以使用Microsoft提供的silverlight界面查看您的工作人员角色的状态:http://windows.azure.com
如果您发现您的WorkerRole从未处于“就绪”状态,则通常意味着您的WorkerRole无法启动。这意味着OnStart()方法可能会引发异常。
如果你想了解发生了什么,你可以:
答案 1 :(得分:0)
请在下面的问题中研究我的评论:
Webrole is not starting and always busy
对于工作人员角色,如果您没有运行Web服务器,则无需执行上述步骤2),仍然可以执行所有其他步骤来解决此问题。