我的程序中有一个方法是服务器回调,如下所示:
private void DeserializerCallback(IAsyncResult aysncResult)
{
HttpWebRequest request = (HttpWebRequest)aysncResult.AsyncState;
HttpWebResponse response;
try
{
response = (HttpWebResponse)request.EndGetResponse(aysncResult);
}
catch(WebException e)
{
VenueMapException venueMapException = new MyException(MyException.ExceptionType.BadResponseException, e);
throw venueMapException;
}
Stream responseStream = response.GetResponseStream();
this.DeserializeStream(responseStream);
}
执行此行后调用此方法:
this.MyHttpRequest.BeginGetResponse(new AsyncCallback(this.DeserializerCallback), this.MyHttpRequest);
在回调方法中,我抛出了一个由我自己定义的异常。现在我想尽可能远离这个代码来捕获这个异常,但是如果我在这个方法中没有捕获它,我不确定异常会在哪里。
有人可以提一些建议吗?谢谢
答案 0 :(得分:1)
可以在页面级别或应用程序级别捕获错误
在这些事件中,我们可以通过代码获取最后发生的异常
Exception exc = Server.GetLastError();