First of all, you seem to want to call a web method in a web service, right?
If that is so, instead of using HttpWebRequest object, you should call the web method in easier way, by adding a web reference in your Visual studio project to the URL
http://195.229.231.233/ICAgentIntegTest/IcWebService.asmx[
^] and calling the desired web method passing the XML document as parameter.
For more on consuming a web service, see
http://www.4guysfromrolla.com/articles/062602-1.aspx[
^]
Now, I am assuming for some reason, you are using HttpWebRequest to consume a web service instead of the natural way, and hence, coming back to your code.
First of all, you are creating a HttpWebRequest object pointing to a URL that returns the WSDL document, not the asmx itself. See, you are using the following code:
HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://195.229.231.233/ICAgentIntegTest/IcWebService.asmx?wsdl");
Instead, you should use the following code, that points to the asmx URL
HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://195.229.231.233/ICAgentIntegTest/IcWebService.asmx");
Second, the "SOAPAction" header value should be set to a web method that is available at the asmx URL. I didn't find any web method that has a name "IcWebService" in the provided asmx URL.
The above two reasons are good enough to make the web service invocation fail and return error. There may be other issues that you may need to care about once the above two issues are fixed (Such as, making sure the corresponding web method accepts XML document, the web method works perfect without any error etc).