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 实例传递给它

相关内容

热门资讯

黑科技存在!德州之星辅助挂(w... 黑科技存在!德州之星辅助挂(wepoke黑科技)总是真的是有挂(揭秘有挂)-哔哩哔哩是一款可以让一直...
黑科技最新!pokerrrr开... 黑科技最新!pokerrrr开挂(微扑克透牌)往昔真的有挂(有挂解惑)-哔哩哔哩1.微扑克透牌 ai...
黑科技ai代打!wepoke黑... 黑科技ai代打!wepoke黑科技功能(wpk最新黑科技)固有是真的有挂(有挂方法)-哔哩哔哩是一款...
黑科技好友!德州之星外挂(we... 黑科技好友!德州之星外挂(wepoke黑科技)先前有挂(有挂教学)-哔哩哔哩1、任何德州ai辅助神器...
黑科技新版!德扑之星辅牌软件(... 黑科技新版!德扑之星辅牌软件(aapoker发牌机制)果然真的是有挂(有挂功能)-哔哩哔哩,您好,a...
黑科技中牌率!aapoker系... 1、黑科技中牌率!aapoker系统机制(wepoke有没有挂)其实是有挂(有挂秘笈)-哔哩哔哩;详...
黑科技数据!智星德州菠萝外挂检... 黑科技数据!智星德州菠萝外挂检测(德州ai辅助)好像真的有挂(真实有挂)-哔哩哔哩,您好,德州ai辅...
黑科技安装!智星德州菠萝在哪下... 自定义德扑ai助手软件系统规律,只需要输入自己想要的开挂功能,一键便可以生成出微扑克专用辅助器,不管...
黑科技游戏!aa扑克德州辅助工... 黑科技游戏!aa扑克德州辅助工具(德州辅助神器软件)确实有挂(有挂教程)-哔哩哔哩1)德州辅助神器软...
黑科技工具!微扑克辅助挂(德扑... 黑科技工具!微扑克辅助挂(德扑ai软件靠谱吗)往昔有挂(发现有挂)-哔哩哔哩1、快速入门:当你通过点...