如何在.net内核中配置Quartz 以使用依赖注入?我使用标准的.net核心依赖机制.在实现IJob的类的构造函数中,我需要注入一些依赖项.
在我的项目中,我必须使用Quartz,但我不知道我做错了什么.
的JobFactory:
public class IoCJobFactory : IJobFactory
{
private readonly IServiceProvider _factory;
public IoCJobFactory(IServiceProvider factory)
{
_factory = factory;
}
public IJob NewJob(TriggerFiredBundle bundle, IScheduler scheduler)
{
return _factory.GetService(bundle.JobDetail.JobType) as IJob;
}
public void ReturnJob(IJob job)
{
var disposable = job as IDisposable;
if (disposable != null)
{
disposable.Dispose();
}
}
}
Run Code Online (Sandbox Code Playgroud)
QuartzExtensions:
public static class QuartzExtensions
{
public static void UseQuartz(this IApplicationBuilder app)
{
app.ApplicationServices.GetService<IScheduler>();
}
public static async void AddQuartz(this IServiceCollection services)
{
var props = new NameValueCollection …Run Code Online (Sandbox Code Playgroud)