我HangFire的依赖注入是错误的吗?

问题描述 投票:0回答:0

我有一门叫做汽车的课程

public class Car : ICar
{
    private readonly Driver driver;
    private readonly EngineInfo engineInfo;
    private readonly Logger logger;

    public Car(Driver driver, EngineInfo engineInfo, Logger logger)
    {
        this.driver = driver;
        this.engineInfo = engineInfo;
        this.logger = logger;
    }



    public void Drive()
    {
        // Your Drive() logic here, using the driver, engineInfo, and logger objects.
    }
}

我正在尝试使用hangfire 来调用Car.Drive()。使用

Client.Enqueue<Car>(c => c.Drive());

当我这样做时,它总是要求 Car 有一个无参数构造函数。当我添加它时,在调用驱动器之前,我无法再将驱动程序、引擎信息或记录器传递给对象。我也尝试过JobActivators,但没有效果。

有更多 HangFire 知识的人可以帮助我吗?我希望能够调用一个参数化汽车构造函数,这样我就可以给它一个驱动程序等,然后调用drive。

我看过近十个关于hangfire的教程,他们都避免了这部分过程。他们排队的作业从来都不是自定义数据类型方法调用。

我已经阅读了大量的 stackoverflow 帖子和 github 问题线程,并尝试了所有这些解决方案,但从未得到可以应用于预先存在的代码库的直接答案。

c# asp.net .net dependency-injection hangfire
© www.soinside.com 2019 - 2024. All rights reserved.