AutoFacSingalr依赖注入返回了“此对象没有定义无参构造函数”的错误。
创始人
2024-11-12 12:00:20
0

这个错误通常意味着您的代码中缺少无参构造函数或您使用的依赖注入容器无法解析没有无参构造函数的对象。要解决这个问题,请添加一个无参构造函数或使用支持解析对象的容器。下面是一个示例代码,向您展示如何在 AutoFac 中使用 SingalR 进行依赖注入:

// 需要注入的类
public class MyDependency
{
    public MyDependency(string name)
    {
        // ...
    }
 
    // 无参构造函数
    public MyDependency()
    {
        // ...
    }
}

// 在 OWIN Startup 类中注册容器
public class Startup
{
    public void Configuration(IAppBuilder app)
    {
        // ...
 
        var builder = new ContainerBuilder();
 
        // 注册依赖
        builder.RegisterType().As().InstancePerDependency();
 
        // 将 SignalR Owin 中间件添加到管道中
        app.UseAutofacMiddleware(container);
        app.MapSignalR();
    }
}

// 在需要进行依赖注入的 SingalR Hub 类中使用构造函数注入
public class MyHub : Hub
{
    private readonly IMyDependency _myDependency;
 
    public MyHub(IMyDependency myDependency)
    {
        _myDependency = myDependency;
    }
 
    // ...
}

在这个示例代码中,我们引入了一个具有无参构造函数和带参数构造函数的类 MyDependency。我们在启动类中注册 MyDependency,告诉 AutoFac 如何解析它,并将容器传递给 OWIN 中间件。在 MyHub 类中,我们使用构造函数注入来注入 IMyDependency。因此,当 SignalR 在运行时创建 MyHub 实例时,它会自动解析依赖项并使用我们注册的 MyDependency 实例传递给它

相关内容

热门资讯

第6分钟实锤!德扑之星有作弊(... 第6分钟实锤!德扑之星有作弊(德州wpk)竟然真的是有挂(详细辅助必胜教程)1.德扑之星有作弊 ai...
第十分钟实锤!德扑起手牌胜率图... 第十分钟实锤!德扑起手牌胜率图(德州app)切实真的是有挂(详细辅助AA德州教程);1、下载好德扑起...
2分钟实锤!智星德州菠萝外挂(... 2分钟实锤!智星德州菠萝外挂(德州nzt)总是存在有挂(详细辅助必赢方法)1、智星德州菠萝外挂机器人...
八分钟实锤!德扑之星辅助器购买... 八分钟实锤!德扑之星辅助器购买(德州app)都是存在有挂(详细辅助解说技巧)在进入德扑之星辅助器购买...
第一分钟实锤!智星德州菠萝有挂... 第一分钟实锤!智星德州菠萝有挂吗(德州机器人)一贯存在有挂(详细辅助wpk教程)1、第一分钟实锤!智...
第一分钟实锤!德扑起手牌胜率图... 第一分钟实锤!德扑起手牌胜率图(德扑ai)其实有挂(详细辅助透视教程)所有人都在同一条线上,像星星一...
6分钟实锤!德州之星辅助挂(德... 6分钟实锤!德州之星辅助挂(德州扑克)其实真的是有挂(详细辅助详细教程)6分钟实锤!德州之星辅助挂(...
五分钟实锤!德扑之星ai代打(... 五分钟实锤!德扑之星ai代打(德州俱乐部)好像是有挂(详细辅助AA德州教程)1、打开软件启动之后找到...
第4分钟实锤!德州ai辅助软件... 第4分钟实锤!德州ai辅助软件(智星德州)其实是有挂(详细辅助必备教程);1、德州ai辅助软件系统规...
第十分钟实锤!德州之星有外挂(... 第十分钟实锤!德州之星有外挂(德州俱乐部)一贯真的有挂(详细辅助2025教程)1、这是跨平台的德州之...