public IncomingMessage SendRequest(OutgoingMessage requestMessage) { var httpRequest = (HttpWebRequest)WebRequest.Create(_serverUrl); httpRequest.Method = "POST"; httpRequest.MediaType = "application/soap+xml; charset=utf-8"; requestMessage.AddHeader(new ToHeader(_serverUrl), true); if (requestMessage.GetHeader <MessageIdHeader>() == null) { requestMessage.AddHeader(MessageIdHeader.CreateRandom(), false); } SerializeRequestBody(httpRequest, requestMessage); var response = (HttpWebResponse)httpRequest.GetResponse(); if (response.StatusCode == HttpStatusCode.OK) { var responseStream = response.GetResponseStream(); if (responseStream != null) { return(new IncomingMessage(XmlReader.Create(responseStream))); } throw new SOAPException("Missing response body."); } var exceptionMessage = GetExceptionMessage(response.StatusCode); throw new SOAPException(exceptionMessage); }
public IncomingMessage SendRequest(OutgoingMessage requestMessage) { var httpRequest = (HttpWebRequest)WebRequest.Create(_serverUrl); httpRequest.Method = "POST"; httpRequest.MediaType = "application/soap+xml; charset=utf-8"; requestMessage.AddHeader(new ToHeader(_serverUrl), true); if (requestMessage.GetHeader<MessageIdHeader>() == null) { requestMessage.AddHeader(MessageIdHeader.CreateRandom(), false); } SerializeRequestBody(httpRequest, requestMessage); var response = (HttpWebResponse)httpRequest.GetResponse(); if (response.StatusCode == HttpStatusCode.OK) { var responseStream = response.GetResponseStream(); if (responseStream != null) { return new IncomingMessage(XmlReader.Create(responseStream)); } throw new SOAPException("Missing response body."); } var exceptionMessage = GetExceptionMessage(response.StatusCode); throw new SOAPException(exceptionMessage); }