在Compact Framework上使用C#使用Web服务:解组错误

时间:2016-11-21 02:52:50

标签: c# soap https windows-mobile compact-framework

我在使用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"但是我不确定它是不是真的如此,我不知道如何更改它以进行测试。

有没有办法检查正在创建的消息?

非常感谢任何建议!

0 个答案:

没有答案