I am trying to post Xml data to .asmx service.

I can't add the service as a service reference to my project. So I have to post data as a Xml format.

I try with this code.

Please tell me what is wrong with my code...


Code:
private void TextBlock_Tap(object sender, System.Windows.Input.GestureEventArgs e)
        {
            StringBuilder soapRequest = new StringBuilder("<soap:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\">");
            soapRequest.Append("<soap:Body>");
            soapRequest.Append("blamethod");
            soapRequest.Append("<VersionInfo>");
            soapRequest.Append("<Major>1</Major>");
            soapRequest.Append("<Minor>0</Minor>");
            soapRequest.Append("</VersionInfo>");
            soapRequest.Append("<UserInfo>");
            soapRequest.Append("<req1>1</req1>");
            soapRequest.Append("<req2>1</req2>");
            soapRequest.Append("<req3>1</req3>");
            soapRequest.Append("<req4>1</req4>");
            soapRequest.Append("</UserInfo>");
            soapRequest.Append("<Request>");
            soapRequest.Append("<user>bla1</user>");
            soapRequest.Append("<pword>bla2</pword>");
            soapRequest.Append("</Request>");
            soapRequest.Append("</blamethod>");
            soapRequest.Append("</soap:Body>");
            soapRequest.Append("</soap:Envelope>");
            
            soapString = soapRequest.ToString();
            HttpWebRequest request = HttpWebRequest.Create("https://blabla.com.tr/bla1.asmx?op=blamethod") as HttpWebRequest;
            request.Credentials = new NetworkCredential("username", "password");
            request.BeginGetResponse(new AsyncCallback(GetRequestStreamCallback), request);
        }
        private void GetRequestStreamCallback(IAsyncResult asynchronousResult)
        {
            MessageBox.Show(asynchronousResult.ToString());

            char[] soapCharArr = soapString.ToCharArray();
            HttpWebRequest req = (HttpWebRequest)asynchronousResult.AsyncState;
            byte[] buffer = Encoding.UTF8.GetBytes(soapString.ToCharArray(), 0, soapCharArr.Length);
            Stream postStream = req.EndGetRequestStream(asynchronousResult);
            postStream.Write(buffer, 0, buffer.Length);
            postStream.Close();
            req.BeginGetResponse(new AsyncCallback(GetResponseCallBack), req);

        }
        private void GetResponseCallBack(IAsyncResult asynchronousResult)
        {
            HttpWebRequest req = (HttpWebRequest)asynchronousResult.AsyncState;
            HttpWebResponse response = (HttpWebResponse)req.EndGetResponse(asynchronousResult);
            System.IO.Stream responseStream = response.GetResponseStream();
            System.IO.StreamReader reader = new System.IO.StreamReader(responseStream);
            string data = reader.ReadToEnd();
            responseStream.Close();
            this.Dispatcher.BeginInvoke(() => { MessageBox.Show(data.ToString()); });
            reader.Close();
            responseStream.Close();
        }
My SOAP Web Service is;

Code:
POST /bla1.asmx HTTP/1.1
    Host: blabla.com
    Content-Type: text/xml; charset=utf-8
    Content-Length: length
    SOAPAction: "http://blabla.com/blamethod"
    

    <?xml version="1.0" encoding="utf-8"?>
    <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
      <soap:Body>
        <blamethod xmlns="http://blabla.com/">
          <VersionInfo>
            <Major>int</Major>
            <Minor>int</Minor>
          </VersionInfo>
          <UserInfo>
            <req1>decimal</req1>
            <req2>string</req2>
            <req3>string</req3>
            <req4>string</req4>
          </UserInfo>
          <Request>
            <user>decimal</user>
            <pword>string</pword>
          </Request>
        </blamethod>
      </soap:Body>
    </soap:Envelope>
Response;

Code:
 HTTP/1.1 200 OK
    Content-Type: text/xml; charset=utf-8
    Content-Length: length

    <?xml version="1.0" encoding="utf-8"?>
    <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
      <soap:Body>
        <blamethodResponse xmlns="blabla.com/">
          <Response>
            <Information>
              <name>string</name>
              <surname>string</surname>
            </Information>
            <Contract_x0020_List>
              <Contract>
                <accountno>decimal</accountno>
                <Plan>string</Plan>
              </Contract>
              <Contract>
                <accountno>decimal</accountno>
                <Plan>string</Plan>
              </Contract>
            </Contract_x0020_List>
          </Response>
        <blamethodResponse>
      </soap:Body>
    </soap:Envelope>