Я использую IhostedService
в своем приложении ASP.NET core web.
Как описано здесь .
Хост-сервис работает в бесконечном цикле while:
while (!stoppingToken.IsCancellationRequested)
{
// Logic here
await Task.Delay(10000, stoppingToken);
}
Сервис извлекает данные из БД и периодически генерирует из них отчеты.
Все работает нормально, но служба иногда дает сбой (создается исключение, и служба завершается).
Так как фоновый сервис имеет решающее значение для приложения, возможно ли его автоматический перезапуск? Или полностью выйти из приложения web api?
В настоящее время он просто завершается, и веб-API продолжает работать (но обслуживает старые / бесполезные данные, поскольку служба не работает).