1
我有一個WCF數據服務,它正在通過WebClient調用ServiceOperation(ServiceOperation返回非實體數據,所以我必須解析XML結果來自WebClient)。撥打電話的代碼看起來像這樣(我已經移除代碼中的一些敏感信息):WebClient調用WCF數據服務正在刪除特定的異常消息
WebClient wc = new WebClient();
string requestXMLresult = wc.DownloadString(new Uri(string.Format("http://localhost:49370/DataService.svc/ServiceOperationName?<params, etc>")));
XDocument xdoc = XDocument.Parse(requestXMLresult);
// <etc>
在(例如)認證,我的服務可以拋出這樣的DataServiceException:
throw new DataServiceException(401, "The specified user did not have permissions to any resources.");
問題是,在客戶端,當異常回來時,我將失去額外的文本。我得到的實際例外是「(401)未經授權」,就是這樣。我檢查了InnerException,異常消息等,它似乎丟失了。
有沒有辦法通過WebClient連接保留該消息?我不確定這是一個WCF數據服務問題,還是一般問題,通過WebClient連接拋出異常(我懷疑後者,但我很新)。
任何幫助非常感謝!
是的,經過進一步的探索,我認爲你是對的。我最終走向了另一個方向,所以現在異常處理方式不同。感謝Roy! – Egahn 2011-06-24 17:10:40