try
{
IUIItem menuItem = menu.Get(SearchCriteria.ByText(criteria));
menuItem.Click();
}
只成功當try塊段(無例外)。如果try塊被省略(不嘗試),它會拋出一個錯誤。對我來說似乎是不可能的,但事情就是這樣。爲什麼?
try
{
IUIItem menuItem = menu.Get(SearchCriteria.ByText(criteria));
menuItem.Click();
}
只成功當try塊段(無例外)。如果try塊被省略(不嘗試),它會拋出一個錯誤。對我來說似乎是不可能的,但事情就是這樣。爲什麼?
您需要查看try-catch的定義。當你有try-catch時,異常仍然被拋出,但try-catch處理它,所以你的代碼可以繼續運行。如果沒有嘗試,程序將會中斷,因爲沒有任何東西可以處理它。
如果沒有catch語句,此代碼將不會編譯。如果你有:
try
{
IUIItem menuItem = menu.Get(SearchCriteria.ByText(criteria));
menuItem.Click();
}
catch (Exception ex)
{
}
的代碼將編譯並拋出被逮住,但它沒有被這樣做,你不會注意到有什麼異常。
如果添加:
catch (Exception ex)
{
Console.WriteLine(ex.Message);
throw ex;
}
你會寫異常消息到控制檯,然後再次拋出(向前)除外。
你可以編輯你的問題來添加你的'catch'塊嗎? –
可以在此嘗試塊之前和之後張貼一些代碼。 &什麼是例外? – Kapoor
你確定它成功了嗎?請顯示您的catch塊 – Breeze