C# Nugetpacked库中的控制反转&x27;在依赖项中传递s

C# Nugetpacked库中的控制反转&x27;在依赖项中传递s,c#,asp.net-mvc,dependency-injection,autofac,C#,Asp.net Mvc,Dependency Injection,Autofac,我已经打包了一些我希望在其他项目中重用的库,这些库实现了IOC原则,我使用Autofac来实现这一点 当我在我的原始项目中创建这些库时,一切都正常工作——即使在重新分解到一个新库之后,我的单元测试都成功完成了 当我将这些库添加到测试项目中以查看Nuget包是否正常工作时,问题就出现了。我添加了我的包,还添加了Autofac-我将Autofac连接起来以注入我的包所具有的依赖项-与我在创建这些库的原始项目中所做的相同 Autofac管道/注册组件 var builder = new

我已经打包了一些我希望在其他项目中重用的库,这些库实现了IOC原则,我使用Autofac来实现这一点

当我在我的原始项目中创建这些库时,一切都正常工作——即使在重新分解到一个新库之后,我的单元测试都成功完成了

当我将这些库添加到测试项目中以查看Nuget包是否正常工作时,问题就出现了。我添加了我的包,还添加了Autofac-我将Autofac连接起来以注入我的包所具有的依赖项-与我在创建这些库的原始项目中所做的相同

Autofac管道/注册组件

        var builder = new ContainerBuilder();

        builder.RegisterAssemblyTypes(AppDomain.CurrentDomain.GetAssemblies())
                                        .Where(t => t.Name.EndsWith("Service"))
                                        .AsImplementedInterfaces();

        builder.RegisterAssemblyTypes(AppDomain.CurrentDomain.GetAssemblies())
                                        .Where(t => t.Name.EndsWith("Model"));

        builder.RegisterAssemblyTypes(AppDomain.CurrentDomain.GetAssemblies())
                                        .Where(t => t.Name.EndsWith("Model"))
                                        .AsImplementedInterfaces();


        builder.RegisterType<InquireEntities>();

        builder.RegisterControllers(typeof(MvcApplication).Assembly);

        var container = builder.Build();

        DependencyResolver.SetResolver(new AutofacDependencyResolver(container));
我不确定如何继续,我正在考虑玩弄Autofac寄存器组件,看看是否必须改变我的操作方式


如果这不起作用,我可能不得不将IOC从我的库中剥离出来,而不是对它们进行单元测试,这对我来说并不真正有吸引力。

我的包传递了一份模型副本-一旦我从新项目中删除了它,错误就消失了。

您的示例中有拼写错误吗?您似乎注册了两次
模型
,但没有注册您的
实体
    public HomeController(IDatabaseService databaseService)
    {
        _databaseService = databaseService;
    }

    //
    // GET: /Home/
    public ActionResult Index()
    {
        var test = _activityService.GetChildActivities(290);
        //other stuff
    }