如何注入依賴到global.asax.cs中,即MvcApplication類?如何注入依賴關係到global.asax.cs中
以前使用服務定位符(反)模式進行依賴項注入,我試圖通過使用IOC容器(特別是Unity.Mvc3,因爲它帶有一個實現IDependencyResolver開箱即用)和構造函數注入。
除了幾個障礙,其中一個在global.asax.cs(另一個是自定義屬性,但在SO覆蓋的問題上還存在問題)之外,一切似乎都很直截了當。
在MvcApplication類的HttpApplication的事件處理程序,例如:
Application_Start()
Application_EndRequest(object sender, EventArgs e)
Application_AcquireRequestState(object sender, EventArgs e)
可能需要外部的依賴關係,例如依賴於ILogService。那麼,如何在不訴諸服務定位器(反)模式的情況下如何進行注入。
private static ILogService LogService
{
get
{
return DependencyResolver.Current.GetService<ILogService>();
}
}
任何幫助/建議非常感謝!
嗨,有趣的問題!爲什麼不能在OnApplicationStarted中的global.asax內注入依賴關係?如果應用程序無法啓動,您會意識到這一點,因爲什麼都不會起作用...... – 2011-10-13 09:32:51