private void FireCompleted(DoPostCompletedEventArgs e) { if (DoPostCompleted != null) { Deployment.Current.Dispatcher.BeginInvoke(() => { DoPostCompleted(this, e); }); } }
private void GetResponse(IAsyncResult asyncResult) { var request = asyncResult.AsyncState as HttpWebRequest; try { var response = request.EndGetResponse(asyncResult) as HttpWebResponse; var result = new DoPostCompletedEventArgs(); using (Stream responseStream = response.GetResponseStream()) { StreamReader reader = new StreamReader(responseStream); // get the result text result.Response = reader.ReadToEnd(); } FireCompleted(result); } catch (WebException ex) { HttpWebResponse response = ex.Response as HttpWebResponse; string result = null; if (response != null) { using (var stream = response.GetResponseStream()) { using (var reader = new StreamReader(stream)) { result = reader.ReadToEnd(); } } } FireCompleted(new DoPostCompletedEventArgs { Error = ex, Response = result }); } }