我在使用Windows Mobile PDA消费网络服务时遇到了困难。我正在使用C#,VS2008,Compact框架。我有一个我习惯的WSDL地址"添加网络参考..."然后我可以访问" Mywebservice"在代码上。我目前的代码是:
using (myWebService ws = new myWebService()) {
try {
ws.Credentials = new System.Net.NetworkCredential("username", "12345678");
ws.Url = "https://webservice_endpoint_address";
outputArgs = ws.myWebServiceMethod(inputArgs);
}
catch (Exception ex) {
MessageBox.Show(ex.ToString());
}
}
要解决一些证书问题,请使用:
public class TrustAllCertificatePolicy : System.Net.ICertificatePolicy
{
public TrustAllCertificatePolicy()
{ }
public bool CheckValidationResult(System.Net.ServicePoint sp, X509Certificate cert, System.Net.WebRequest req, int problem)
{
return true;
}
}
在Form.Activated包括
System.Net.ServicePointManager.CertificatePolicy = new TrustAllCertificatePolicy();
当我尝试使用Web服务时,我收到以下错误:" System.Web.Services.Protocols.SoapHeaderException:Unmarshalling Error:意外元素(uri:" {{3 }} .........",...)
我见过一些使用" System.Web.Services.Protocols.SoapDocumentMethodAttribute" vs" System.Web.Services.Protocols.SoapRPCMethodAttribute"但是我不确定它是不是真的如此,我不知道如何更改它以进行测试。
有没有办法检查正在创建的消息?
非常感谢任何建议!