IScheduledJobHandler — интерфейс обработчика Задания по расписанию.
Обработчик реализует пользовательскую логику. Система выполняет её автоматически по настроенному расписанию.
Такие задания используются для фоновых операций, которые не связаны напрямую с действиями пользователя.
Обработчики заданий по расписанию позволяют реализовать:
Задание настраивается в системе. Оно указывает класс обработчика, который реализует IScheduledJobHandler.
public interface IScheduledJobHandler
{
Task Execute(ScheduledJobContext context);
}
Task Execute(ScheduledJobContext context);
Метод вызывается системой при выполнении задания по расписанию. Внутри метода реализуется основная логика задания.
context
Контекст выполнения задания (ScheduledJobContext). Наследует DynamicCodeContext и предоставляет доступ к API системы.
Через контекст можно:
Пример задания, выполняющего HTTP-запрос к внешнему API.
public class SyncJob : IScheduledJobHandler
{
public async Task Execute(ScheduledJobContext context)
{
var http = context.GetHttpClient();
var response = await http.GetStringAsync(
"https://api.example.com/data"
);
await context.Log("Данные успешно получены из внешнего API");
}
}
context.Log(...) для диагностики работы задания.context.GetHttpClient().IQueryable, чтобы избежать загрузки лишних данных в память.Перейти на русскую версию?