大家好,
我在使用C#调用Axis2 Web服务的问题。
当我调用这个服务通过SOAP工具工作的罚款。
但其通过C#代码给内部的服务器错误。
请告诉我什么我失踪,而调用服务。
我如何可以在C#代码中添加的用户名/密码和时间戳属性。
我试着拨打在VS 2008中使用添加引用,我成功地创建代理使用WSDL实用
但我仍是无法调用服务。
这里是我的样本代码
string soap = BuildAxisSOAPMessage("", "crm", "get"); // Create SOAP Message using this function
soap = soap.Replace("", "");
HttpWebRequest request;
request = (HttpWebRequest)WebRequest.Create("http://**********/********/***/****Service?wsdl");
request.Headers.Add("Username", "******");
request.Headers.Add("Password", "*******");
request.Headers.Add("Nonce", "*******");
request.Headers.Add("Created", DateTime.Now.ToUniversalTime().ToString());
request.Headers.Add("Timestamp", DateTime.Now.ToUniversalTime().ToString());
request.Credentials = new NetworkCredential("*****", "******");
request.Method = "POST";
request.Headers.Add("SOAPAction", "urn:get");
ASCIIEncoding encoding = new ASCIIEncoding();
byte[] byte1 = encoding.GetBytes(soap);
using (Stream postStream = request.GetRequestStream())
{
postStream.Write(byte1, 0, byte1.Length);
}
using (HttpWebResponse response = request.GetResponse() as HttpWebResponse) // Gives error-- Internal server Error..
{
StreamReader reader = new StreamReader(response.GetResponseStream());
string res = reader.ReadToEnd();
}
提前感谢
尼廷