我的代碼段:C#SQLiteException(只有SQLiteException)不被拋出
try
{
//sniping out a bunch of irrelevant code here
result = cmd.ExecuteScalar();
onExecution?.Invoke(result);
return true;
}
catch (SQLiteException e)
{
if (e.ResultCode == SQLiteErrorCode.Corrupt)
{
CorruptionDetected?.Invoke(null, EventArgs.Empty);
}
//snip - else if {etc}
throw;
}
的問題:我有VS設置爲無論什麼方面始終所有的時間都異常打破無一例外。 VS正確執行此操作,並且程序中的其他任何異常都不會出現問題,除此之外。
我知道爲什麼會發生錯誤。這對我來說絕對不感興趣,也是毫不相關的。
我想知道的是爲什麼這個問題似乎沒有實際產生異常,或者沒有捕捉到它。我100%肯定地知道錯誤正在發生。您可以在「診斷工具」窗口的「事件」選項卡中看到它們。他們堆積在那裏,但我從來沒有得到一個可捕獲的異常,只是在事件選項卡中無用的垃圾。
我該如何處理?如果錯誤(SQLite錯誤(5):數據庫被鎖定)是一個問題,那麼爲什麼我沒有得到異常?如果這不是問題並且最終得到處理,爲什麼會污染我的活動列表?
它目前的立場是完全不可接受的,因爲它絕對沒有意義。要麼這是一個問題,在這種情況下,我應該得到一個異常,或者這不是一個問題,在這種情況下,我不想被無用的調試事件淹沒。