在特定时间运行C#代码

本文关键字:代码 运行 定时间 | 更新日期: 2023-09-27 18:09:16

可能重复:
C#在特定时间执行功能

我想在某个时间运行某个函数。我试过定时器控制。它不起作用。我的问题是:如何在C#中每天19:00运行一个函数?有没有什么方法可以检查时间并有一个Timer对象?

计时器代码:

int Interval(TimeSpan gorevZamani)
{
    if ((gorevZamani - DateTime.Now.TimeOfDay).TotalMilliseconds > 0.0)
        return (int)(gorevZamani - DateTime.Now.TimeOfDay).TotalMilliseconds;
    else
        return (int)((gorevZamani - DateTime.Now.TimeOfDay).Add(TimeSpan.FromDays(1)).TotalMilliseconds);
}

在特定时间运行C#代码

在问题集中尽可能重复:C#在特定时间执行函数人们建议使用Quartz.NET或windows任务调度程序。

这两种选择最终都可以达到目的,但我相信,正如我在之前的类似问题中已经多次建议的那样,Windows任务计划程序更好,因为你不需要为它编写任何代码,而是让Windows为你做计划,你只关注你的应用程序的真实业务案例,而这是Windows无法为你做的,然后依靠现有的技术将事情粘合在一起,而不必调试或重新发明已经完成的和可供您使用的内容。

使用计划任务。实现这一点的一个好方法是at命令,它在MSDN上有文档记录。