我正在做一個表單,用戶可以插入/刪除/添加實體。我正在使用Winforms c#和實體框架4.在捕獲中自定義Sql異常消息
好吧,用戶可以刪除對象。現在,這些對象可以被其他實體引用,所以如果用戶想要刪除它,他會得到一個異常。
我捕捉到這個異常,以便向他顯示一條消息,說明該對象開始在其他對象中使用。
我得到的異常是(UpdateException)。但是,如果還有更新問題,則可能會引發此異常。有什麼辦法從Sql使用這個異常來獲取錯誤代碼?因爲我確實有發生這種情況時拋出的錯誤代碼。
如果我使用SqlException,我可以檢查它的編號,但這不是我收到的異常。
底層異常可能已保留在更新異常的InnerException屬性中。 – 2013-02-20 00:14:37
而不是捕捉異常爲什麼你甚至在嘗試保存更改之前不檢測條件?您似乎預料到此異常,因此您不會將異常用作例外,而是控制應用程序的流程。 – Pawel 2013-02-20 01:54:22
因爲我將不得不檢查每一個關係。我會用這個爲每個實體。我爲什麼要這樣做,如果sql管理自己?你告訴我的是和說「爲什麼使用try catch?」一樣。只是檢查之前的每一個錯誤可能性。只是沒有選擇。感謝您的回答,儘管 – Andres 2013-02-20 02:10:42