在Web API 2中使用Unity(设计时配置)实现DI

时间:2015-05-06 09:53:25

标签: dependency-injection unity-container asp.net-web-api2

我正在使用Web API层中的Unity实现DI。以下是我在调用服务时收到的错误消息 -

  

依赖项的解析失败,type =   " API.Controllers.LeadController",name ="(none)"。

     

在解析时发生异常。

     

异常是:InvalidOperationException - 当前类型,   Business.ILeadManager,是一个无法构造的接口。是   你错过了类型映射吗?

           

在例外时,容器是:

     

解析API.Controllers.LeadController,(无)

     

解析参数" leadManager"构造函数   API.Controllers.LeadController(Business.ILeadManager leadManager)

     

解析Business.ILeadManager,(无)

有什么建议,有什么不对吗?

1 个答案:

答案 0 :(得分:1)

您的统一配置缺少类型Business.ILeadManager的映射,因此unity不知道它应该创建哪个对象实例。

您的类型应该有一个条目,如:

<register type="Business.ILeadManager" mapTo="MyLeadManagerImplementation" />