public WebRequestServiceResponse PostData(HttpWebRequest request, string json, bool suppressNetworkErrors, bool suppressExceptions, bool notifyUser = false) { var response = new WebRequestServiceResponse(); try { _networkEventBroadcaster.RaiseNetworkUsageStart(); using (var streamWriter = new StreamWriter(request.GetRequestStream())) { streamWriter.Write(json); streamWriter.Flush(); streamWriter.Close(); using (HttpWebResponse webResponse = (HttpWebResponse)request.GetResponse()) { response = new WebRequestServiceResponse(null, webResponse.StatusCode, webResponse.StatusDescription); if (webResponse.StatusCode == HttpStatusCode.OK) { using (StreamReader streamReader = new StreamReader(webResponse.GetResponseStream())) { var content = streamReader.ReadToEnd(); if (!string.IsNullOrWhiteSpace(content)) { response.Data = content; } } } } } } catch (WebException ex) { if (!suppressNetworkErrors) { _networkEventBroadcaster.RaiseNetworkErrorEvent(ex, notifyUser); } if (!suppressExceptions) { throw; } } catch (Exception ex) { if (!suppressExceptions) { _networkEventBroadcaster.RaiseErrorEvent(ex, notifyUser); } if (!suppressExceptions) { throw; } } finally { _networkEventBroadcaster.RaiseNetworkUsageEnd(); } return(response); }
public WebRequestServiceResponse PostData(HttpWebRequest request, object objectToPost, bool suppressNetworkErrors, bool suppressExceptions, bool notifyUser = false) { var response = new WebRequestServiceResponse(); try { _networkEventBroadcaster.RaiseNetworkUsageStart(); var errorInfo = SerializeObject(objectToPost); using (var streamWriter = new StreamWriter(request.GetRequestStream())) { streamWriter.Write(errorInfo); streamWriter.Flush(); streamWriter.Close(); using (HttpWebResponse webResponse = (HttpWebResponse)request.GetResponse()) { response = new WebRequestServiceResponse(null, webResponse.StatusCode, webResponse.StatusDescription); // Nothing else to do here } } } catch (WebException ex) { if (!suppressNetworkErrors) { _networkEventBroadcaster.RaiseNetworkErrorEvent(ex, notifyUser); } if (!suppressExceptions) { throw; } } catch (Exception ex) { if (!suppressExceptions) { _networkEventBroadcaster.RaiseErrorEvent(ex, notifyUser); } if (!suppressExceptions) { throw; } } finally { _networkEventBroadcaster.RaiseNetworkUsageEnd(); } return(response); }