无法使用unity 2.0注册对象

时间:2011-10-28 09:28:40

标签: unity-container

我最近创建了一个Web服务,并使用unity来注入我的对象依赖项。我的组合根是Web服务中的Application_Start,我正在使用web.config将我的对象用于接口映射。一切都工作正常,但是在我将项目加载到tfs之后,我不断收到错误声明它无法解析其中一个接口。我删除了代码以从web.config注册我的对象,并在代码中注册它们而不是测试它一切正常。任何想法是什么问题。我有什么想法可以解决这个问题。

在TF之前: -

        UnityContainer uContainer = new UnityContainer();
        UnityConfigurationSection Section = (UnityConfigurationSection)ConfigurationManager.GetSection("unity");
        Section.Configure(uContainer, "CentralRepositoryContainer");
        Application["uContainer"] = uContainer;

修改后的代码工作正常: -

        UnityContainer uContainer = new UnityContainer();
        uContainer.RegisterType<ICentralRepositoryLifeTimehelper, CentralRepositoryLifeTimeHelper>();
        uContainer.RegisterType<IJobsHandler, JobsHandler>();
        Application["uContainer"] = uContainer;

1 个答案:

答案 0 :(得分:0)

我不知道问题,但要排除故障,打印出所有Unity容器注册,看看有什么缺失/更改。

使用Retrieving Container Registration Information

中的代码示例