public object GetService(Type serviceType)
{
object resolvedObject = null;
try
{
resolvedObject = _unityContainer.Resolve(serviceType);
}
catch(ResolutionFailedException e) { }
return resolvedObject;
}
這是最佳實踐來捕獲異常並返回null嗎?默認情況下,mvc嘗試解析IControllerFactory和IViewPageActivator,即我得到兩個捕獲異常。我不喜歡這個解決方案。ASP.NET MVC3依賴注入誤解
我的朋友建議檢查的serviceType上IControllerFactory
,IViewPageActivator
如果拋出一個異常 - 捕獲和記錄的錯誤。但就我而言 - 這不是最好的解決方案,它就像一種硬編碼。
這看起來像您正在使用服務定位器在運行時解析來自IoC容器的依賴關係。就你所知,這是一個非常糟糕的主意,有很多方面。 – 2011-05-05 15:14:26
我應該使用DefaultControllerFactory就像在MVC 2?你能解釋爲什麼這是真的不好主意嗎? – 2011-05-05 15:16:52
標題說明了這一切... – 2011-05-05 17:57:42