直到最近,我还有一个使用NHibernate 2.0的工作服务。我已升级到2.1,但现在尝试实例化ItemManager:
IItemManager manager = Container.Instance.Resolve<IItemManager>();
我得到一个例外:
Castle.MicroKernel.ComponentNotFoundException未被用户代码处理 Message =“没有找到支持服务Distribution.WMS.OrderManagement.Business.Contracts.IItemManager的组件”
我的windsor配置中的映射如下所示:
<component
id="item.manager"
service="Distribution.WMS.OrderManagement.Business.Contracts.IItemManager, Distribution.WMS.OrderManagement.Business.Contracts"
type="Distribution.WMS.OrderManagement.Business.Managers.ItemManager, Distribution.WMS.OrderManagement.Business.Managers"
lifestyle="transient">
<parameters>
<repository>${som.item.repository}</repository>
</parameters>
</component>
IItemManager位于命名空间中:Distribution.WMS.OrderManagement.Business.Contracts
我是否遗漏了一些简单的内容,或者升级后还有其他必须做的事情吗?
答案 0 :(得分:2)
我找到了答案,而不是与升级相关的问题。这个项目取决于我必须更新NHibernate引用的公共库。自从上次我最新的时候有人决定改变windsor配置文件所在的位置,所以当我得到最新的并更新我的引用时它不再能够找到我的配置。