如何在每天一次的确切时间执行操作

时间:2012-04-24 08:30:22

标签: c# asp.net-mvc asp.net-mvc-3 scheduling

我必须每天执行一次动作。如果他们自己没有完成,最终用户的工作时间。

用户可以通过单击在Controller中执行ActionResult的按钮来结束时间:

[HttpPost] 
[Authorize] 
public ActionResult EndWork(...) 
{ 
    ... 
} 

我怎样才能每天午夜自动运行这样的动作?我是否必须使用任务计划程序或Windows服务?我无法在数据库上设置触发器,因为EndWork()将记录插入到数据库中。  我有一个MVC 3网站。

非常感谢任何帮助!

4 个答案:

答案 0 :(得分:1)

您可以使用以下内容:

  1. 编写一个Windows服务,可以监视您的数据库并执行操作。

  2. 有关日程安排,请参阅Quartz .Net

答案 1 :(得分:1)

您可以使用Quartz.NET之类的内容安排活动。您可以看到如何开始here

答案 2 :(得分:1)

你能不能只使用Windows预定任务 - 创建* .exe并将任务设置为每晚午夜运行exe?或者将计划任务指向一个bat文件,该文件启动脚本以执行您需要的操作?

答案 3 :(得分:-4)

您可以使用if语句。将它与计时器一起使用,以便检查当天的当前时间,如果它符合条件,则执行您为其分配的任何操作。