1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/izory-ZrAdminNetCore

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
TasksExtension.cs 1.9 КБ
Копировать Редактировать Исходные данные Просмотреть построчно История
不做码农 Отправлено 3 лет назад 31b17bb
using Infrastructure;
using Microsoft.AspNetCore.Builder;
using Microsoft.Extensions.DependencyInjection;
using Quartz.Spi;
using System;
using System.Threading.Tasks;
using ZR.Service.System.IService;
using ZR.Tasks;
namespace ZR.Admin.WebApi.Extensions
{
/// <summary>
/// 定时任务扩展方法
/// </summary>
public static class TasksExtension
{
public static void AddTaskSchedulers(this IServiceCollection services)
{
if (services == null) throw new ArgumentNullException(nameof(services));
//添加Quartz服务
services.AddSingleton<IJobFactory, JobFactory>();
//添加我们的服务
//services.AddTransient<Job_SyncTest>();
services.AddTransient<ITaskSchedulerServer, TaskSchedulerServer>();
}
/// <summary>
/// 程序启动后添加任务计划
/// </summary>
/// <param name="app"></param>
/// <returns></returns>
public static IApplicationBuilder UseAddTaskSchedulers(this IApplicationBuilder app)
{
//var _tasksQzService = (ISysTasksQzService)App.GetRequiredService(typeof(ISysTasksQzService));
ITaskSchedulerServer _schedulerServer = App.GetRequiredService<ITaskSchedulerServer>();
//var tasks = _tasksQzService.GetList(m => m.IsStart);
var tasks = SqlSugar.IOC.DbScoped.SugarScope.Queryable<Model.System.SysTasksQz>().Where(m => m.IsStart).ToList();
//程序启动后注册所有定时任务
foreach (var task in tasks)
{
var result = _schedulerServer.AddTaskScheduleAsync(task);
if (result.Result.Code == 200)
{
Console.WriteLine($"注册任务[{task.Name}]ID:{task.ID}成功");
}
}
return app;
}
}
}

Комментарий ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://gitlife.ru/oschina-mirror/izory-ZrAdminNetCore.git
git@gitlife.ru:oschina-mirror/izory-ZrAdminNetCore.git
oschina-mirror
izory-ZrAdminNetCore
izory-ZrAdminNetCore
v3.8.1