我有一个Blazor Server .Net 6应用程序。我希望在此应用程序中每小时调用一个函数。过去,我创建了一个Windows Server计划任务来调用执行此函数的网页。我想知道是否有任何不错的程序集/方法可以添加到我的应用程序中,使我可以改为执行此操作。另一个替代方案是创建一个Azure函数,但我想我会先调查一下我能在Blazor Server应用程序的Relms中做些什么。短暂性脑缺血
4uqofj5v1#
您可以为此使用具有计时器的自订服务。例如:
public class ExampleService : IDisposable { public Timer? CheckTimer { get; set; } public async Task RunTimer() { CheckTimer = new Timer(async (e) => { try { await Check(); } catch (Exception ex) { } },null,0, 30000); // define interval here } public async Task Check() { // DO YOUR STUFF HERE } public void Dispose() { CheckTimer.Dispose(); } }
在Program.cs中启动服务:
await builder.Services.GetRequiredService<ExampleService>().RunTimer();
1条答案
按热度按时间4uqofj5v1#
您可以为此使用具有计时器的自订服务。例如:
在Program.cs中启动服务: