我正在使用依賴注入模式來解析我的UnitOfWork的正確實例。 當我只使用一種類型的映射,一切正常如何實例化工作
unityContainer.RegisterType<IUnitOfWork, UnitOfWork>();
當我使用兩種類型映射爲同一界面中出現的問題:
unityContainer.RegisterType<IUnitOfWork, UnitOfWork1>();
unityContainer.RegisterType<IUnitOfWork, UnitOfWork2>();
我已經很常見代碼製作像
var unitOfWork = ServiceLocator.GetInstance<IUnitOfWork>();
在某些情況下,它應該返回UnitOfWork,在某些情況下,它應該返回UnitOfWork2。
如何解決此問題而不重構通用部分?
P.S.是的 - 我知道命名的容器))
感謝您的諮詢。但看起來問題更爲複雜。 – 2010-08-31 15:41:01
你可以擴展你的問題嗎?也許我們可以找到另一種解決方案。 – 2010-09-01 04:15:56