我有一塊的嘗試捕捉代碼:如何確定是否異常是一種特殊類型
try
{
...
}
catch(Exception ex)
{
ModelState.AddModelError(
"duplicateInvoiceNumberOrganisation", "The combination of organisation and invoice number must be unique");
}
對於這段代碼我試圖插入一條記錄到數據庫:DBA必須設置它以便數據庫檢查重複項,並在重複時返回錯誤。目前,正如您所看到的,無論發生什麼錯誤,我都會向模型添加相同的錯誤。我想改變它,所以如果這個錯誤是由dba設置的重複錯誤引起的,那麼這個錯誤只會被添加到模型中。
下面是我想要捕捉的錯誤。注意它在內部例外。誰能告訴我如何具體抓住這一個?
見達維德的答案。通常捕捉「例外」不是最佳實踐。你應該儘可能具體,讓任何你無法處理的東西冒泡到用戶/框架。 – Ryan 2012-02-14 00:21:22
看看這個答案: http://stackoverflow.com/questions/3967140/c-sharp-entity-framework-duplicate-unique-exception – 2012-02-14 00:21:41