在ASP.NET MVC
(3.0)中使用Castle.Windsor
有什麼辦法可以適當地處理,如果我的一個依賴關係解析爲空?例如,假設我有一個IMembershipService
。Castle.Windsor,ASP.NET MVC,處理注入的空分辨率
class ServiceInstaller
{
// ...
void Install(// ..)
{
container.Register(
Component
.For<IMembershipService>()
.ImplementedBy<MembershipService>()
.LifeStyle.PerWebRequest
);
}
}
好的,這個工程很好。現在,也許不是我的所有站點都需要用戶登錄。假設我的虛擬主機的數據庫服務器可能會崩潰幾個小時。在這種情況下,查看數據庫或試圖調用我的ISession
的內容可能會返回null。
我能在這種情況下做什麼?我可以寫if(membershipService == null)
一百遍以上,但看起來很愚蠢。是否有內置的解決方案說「嘿,如果我們有錯誤,請執行此操作..?」
如果您的數據庫服務器崩潰,您的數據庫查詢應該*拋出*,**永遠不會返回null。 – 2011-02-07 15:31:45