我們有一個不尋常的情況,在另一個try-catch塊內的try-catch塊。兩個catch子句都捕獲異常類型的異常。在最內層的try-catch塊中發生的錯誤,會被第一個空的catch捕獲,而不是移動到下一行,它會被另一個catch捕獲。這是我以前從未見過的。我們的一位同事聲稱這是一些設置,但他不記得是什麼樣的設置。你知道爲什麼會發生這種情況,以及如何「關掉它」? 請找到下面的代碼:由於某種原因被捕獲的異常冒泡到另一個catch塊
try {
//some code
try
{
//code that throws exception
}
catch (Exception)
{
}
//some other code, never reached
}
catch (Exception ex)
{
Logger.Write(ex.ToString());
return null;
}
顯示一些真實的代碼。 – Henrik
什麼是第一個catch塊的「處理」部分?它涉及重新拋出exceptoin嗎? –
在第一個(即_inner_)catch塊中肯定存在一個異常。你能提供更多相關的代碼嗎? –