我最近创建了一个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;
答案 0 :(得分:0)
我不知道问题,但要排除故障,打印出所有Unity容器注册,看看有什么缺失/更改。
中的代码示例