小编don*_*x93的帖子

.net核心石英依赖注入

如何在.net内核中配置Quartz 以使用依赖注入?我使用标准的.net核心依赖机制.在实现IJob的类的构造函数中,我需要注入一些依赖项.

.net c# dependency-injection quartz.net asp.net-core

12
推荐指数
3
解决办法
7641
查看次数

Quartz.Net依赖注入.Net核心

在我的项目中,我必须使用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)

.net c# scheduler quartz.net asp.net-core

10
推荐指数
3
解决办法
6485
查看次数