Files
yes.blog/Yes.Application/Core/HostedServices/HangfireJobRegistrationService.cs
2025-05-15 12:53:47 +08:00

39 lines
1.2 KiB
C#

namespace Yes.Application.Core.HostedServices
{
public class HangfireJobRegistrationService : BackgroundService
{
private readonly IServiceProvider _serviceProvider;
private readonly BlogSettings _settings;
public HangfireJobRegistrationService(
IServiceProvider serviceProvider,
IOptionsMonitor<BlogSettings> options)
{
_serviceProvider = serviceProvider;
_settings = options.CurrentValue;
}
protected override async Task ExecuteAsync(CancellationToken stoppingToken)
{
using var scope = _serviceProvider.CreateScope();
var recurringJobManager = scope.ServiceProvider.GetRequiredService<IRecurringJobManager>();
var intervalHours = _settings.RssGenerationIntervalHours;
//recurringJobManager.AddOrUpdate<RssGenerationJob>(
// nameof(RssGenerationJob),
// x => x.Execute(),
// Cron.Hourly(intervalHours)
//);
recurringJobManager.AddOrUpdate<RssGenerationJob>(
nameof(RssGenerationJob),
x => x.Execute(),
Cron.Minutely
);
}
}
}