Job_SyncTest.cs 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. using Infrastructure.Attribute;
  2. using Quartz;
  3. using SqlSugar.IOC;
  4. using System.Threading.Tasks;
  5. using ZR.Model.System;
  6. namespace ZR.Tasks.TaskScheduler
  7. {
  8. /// <summary>
  9. /// 定时任务测试
  10. /// 使用如下注册后TaskExtensions里面不用再注册了
  11. /// </summary>
  12. [AppService(ServiceType = typeof(Job_SyncTest), ServiceLifetime = LifeTime.Scoped)]
  13. public class Job_SyncTest : JobBase, IJob
  14. {
  15. //private readonly NLog.Logger logger = NLog.LogManager.GetCurrentClassLogger();
  16. public async Task Execute(IJobExecutionContext context)
  17. {
  18. await ExecuteJob(context, Run);
  19. }
  20. /// <summary>
  21. /// 任务使用中注意:所有方法都需要使用异步,并且不能少了await
  22. /// </summary>
  23. /// <returns></returns>
  24. public async Task Run()
  25. {
  26. await Task.Delay(1);
  27. //TODO 业务逻辑
  28. var db = DbScoped.SugarScope;
  29. var info = await db.Queryable<SysDept>().FirstAsync();
  30. //其他库操作
  31. //var db2 = DbScoped.SugarScope.GetConnectionScope(2);
  32. System.Console.WriteLine("job test");
  33. }
  34. }
  35. }