當調試以下控制檯程序:在VS 2008中進行調試時,爲什麼調試器需要第二個return語句?
class Program
{
static void Main(string[] args)
{
Console.WriteLine(DoIt(false));
Console.WriteLine(DoIt(true));
}
private static Boolean DoIt(Boolean abort)
{
try {
throw new InvalidOperationException();
} catch(Exception ex) {
if (abort) {
return true;
}
Console.WriteLine("Got here");
return false;
}
}
}
爲什麼在第二return語句IDE土地第二通話過程中DOIT()?執行結果是正確的,但調試經驗是誤導性的。
這是一個已知的問題?
是2010年同期VS行爲?
我在VS2008跑這個錯誤,並通過預期路徑在這兩個版本加強和調試版本。也許.pdb文件已過期? – 2010-04-30 18:37:30
我還應該提一下,我安裝了最新版本的Resharper,但其行爲與Resharper禁用相同。 – 2010-04-30 18:40:02