gpt4 book ai didi

c# - 如何在 C# .net 中每天早上执行一个方法

转载 作者:太空宇宙 更新时间:2023-11-03 23:23:46 24 4
gpt4 key购买 nike

我想写一段代码,它会在每天早上 06:00 触发一个方法 Processmethod,不知何故我设法写了下面的代码,但它不是通用的。我怎样才能用更少的代码让它在早上 06:00 开始?

while(true) {
Thread.sleep(Timespan.FromHours(11))
Processmethod();
}

最佳答案

您必须为此实现调度程序任务。有许多 dll 可用于完成此任务。例如,您可以使用 Quartz.Net。首先创建一个要执行的作业-

 public class EmailJob : IJob
{
public void Execute(IJobExecutionContext context)
{
// implement your method here

}
}

现在将此作业指定给调度程序 -

   public class JobScheduler
{
public static void Start()
{
IScheduler scheduler = StdSchedulerFactory.GetDefaultScheduler();
scheduler.Start();

IJobDetail job = JobBuilder.Create<EmailJob>().Build();

ITrigger trigger = TriggerBuilder.Create()
.WithDailyTimeIntervalSchedule
(s =>
s.WithIntervalInHours(24)
.OnEveryDay()
.StartingDailyAt(TimeOfDay.HourAndMinuteOfDay(0, 0))
)
.Build();

scheduler.ScheduleJob(job, trigger);
}
}

现在在 global.asax 的 Application_Start 中指定 JobScheduler.Start();

关于c# - 如何在 C# .net 中每天早上执行一个方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34481620/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com