我使用C#和Visual Studio 2012開發WP8應用程序。我添加了一個服務引用到我的項目(添加服務引用)。所以我能夠使用web服務功能。如何從CompletedEventArgs中獲取拋出異常的類型?
client = new YChatWebService.WebServiceControllerPortTypeClient();
client.getDataCompleted += client_getDataCompleted;
client.InnerChannel.OperationTimeout = new TimeSpan(0, 0, 0, 0, 500);
client.getDataAsync();
void client_getDataCompleted(object sender, getDataCompletedEventArgs e)
{
// e.Error.Message
}
我已經爲getData()
設置了超時限制500ms;如果超過了時間限制,然後我收到以下錯誤:
"The HTTP request to 'http://example.com/webService/index?ws=1' has exceeded the allotted timeout. The time allotted to this operation may have been a portion of a longer timeout."
這是很好的:)不過,我想找出什麼樣的異常被拋出。像包含字符串「TimeoutException
」的字符串變量就好。我怎樣才能達到目的?
會「如果(e.Error是TimeoutException)」工作?我不確定e.Error是什麼類,任何文檔? – ZombieSpy
謝謝@ZombieSpy。 「e.Error是TimeoutException」返回true。 – MPeli
「e.Error.InnerException」或「e.Error.BaseException」是什麼? – codingbiz