请给我一些建议。
我的问题如下,我正在自定义计划任务中实现依赖项。任务本身是用必要的依赖初始化的,但是,在启动过程中,任务转移到状态正在运行,但代码没有执行
计划任务:
public class TestJob : ScheduledTask, IJob
{
private readonly ITestService _testService;
public TestJob(ITestService service)
{
if (service is null)
{
throw new ArgumentException(nameof(service));
}
_testService = service;
}
public override void ExecuteTask()
{
_testService.DoSomting("From job");
}
public override string TaskName
{
get
{
return this.GetType().FullName;
}
}
测试服务
public interface ITestService
{
void DoSomting();
void DoSomting(string message);
}
public class TestService : ITestService
{
public void DoSomting()
{
LogHelper.Logger().Information("======> Somting happined");
}
public void DoSomting(string message)
{
LogHelper.Logger().Information($"======> Somting happined {message}");
}
}
记录
private void CreateJob<T>(SchedulingManager manager, string appSettingsName)
where T : ScheduledTask
{
try
{
var job = ObjectFactory.Resolve<T>();
var newUsersAddingJobSettings = settings_eg;
job.Id = Guid.NewGuid();
job.Title = job.TaskName;
job.ScheduleSpecType = settings_eg[0];
job.ScheduleSpec = settings_eg[1];
job.ExecuteTime = CrontabHelper.GetExecuteTime(nsettings_eg);
manager.AddTask(job);
manager.SaveChanges();
}
catch (Exception e)
{
////
}
}
在ninjet中注册服务
ObjectFactory.Container.RegisterType<ITestService, TestService>();