2010-06-02 140 views

回答

1

运行哪种框架与Google合作的控制台应用程序?我有一些指针,如果你正在使用.Net 4.0像我一样开发。

如果您可以访问你的机器,你可以安装服务我将利用新的和改进的工作流服务的这种情况。对他们来说很好的是,工作流可以持续几分钟,几小时,几天,几周,几个月等,直到延迟时间结束。

如果它是一台IIS机器(如果这是您想要的路线),将它直接构建为VS 2010中的“工作流服务”项目/解决方案相对简单。从那里您将看到设计师和工具栏中的几个工作流活动。

添加流程图活动以将您的电子邮件活动置于其中。流程图非常理想,因为它可以初始化您需要的任何内容,并且决策流可以向后重定向(而不是始终向前移动的序列活动)。你的逻辑需要你自己决定,因为你的问题没有提供很多细节。

现在,如果你正在使用的.Net 3.5,那么我会考虑不采取建立工作流程,因为你必须切换到4.0时迁移(WF 3.5不符合4.0兼容)。通过管理员访问机器,您可以安装Windows服务,该服务包含一个定时器,以根据需要每隔30天(或定义)触发代码。

+0

我想我会朝这个方向前进。谢谢... – Soeren 2010-06-02 13:45:09

+0

@Soeren,这里的关键是你不能可靠地触发来自asp.net工作进程/ IIS的事件。你需要Windows服务。 – StingyJack 2010-06-02 14:51:26

1

如果它是特定于SQL Server的,则可以使用SQL Jobs

1

如果你想与你的ASP.NET应用程序,而不是一个单独的应用程序做到这一点,你有一些选择:

既然你想让它每30天每天运行,而不是,我建议使用这种方法计划表,而不是应用程序变量或缓存,调度作业:

你可以设置你的数据库计划表和检查,当它最后一次更新在Global.asax中。在会话开始时,检查当前日期是否超过30天。如果是,则调用一种方法发送电子邮件。

如果您发送电子邮件,则使用当前日期更新您的日程安排表。