当前位置:职场发展 > WCF DataContractSerialzer xml 对象中结果不完整

WCF DataContractSerialzer xml 对象中结果不完整

  • 发布:2023-10-01 02:31

| 我正在创建一个 wcf 包装器服务,该服务从另一个 Web 服务返回 xml。 我要注意的是,并非源中的所有 xml 都序列化到我的对象。 这是源xml:


    234843080
    0
    
    00:00:00.234
    
        0
        
        1
        1
        
            123
            3443
            4
            3
            
            邦德,James
            未知
            
            
            James
            
            债券
            间谍
            
                
WCF包装器服务:
 [DataContract(Name=\"methodResponse\", 命名空间 = \"\")]
    公共部分类 methodResponse {

    [数据成员]
    公共 int 错误代码 {
        得到;
        放;
    }

    [数据成员]
    公共字符串错误文本{
        得到;
        放;
    }

    [数据成员]
    公共字符串 requestId
    {
        得到;
        放;
    }

    [数据成员]
    公共方法ResponseResults[] 结果
    {
        得到;
        放;
    }
}

[DataContract(命名空间 = \"\")]
公共分部类方法ResponseResults
{
    [数据成员]
    公共字符串结果代码 {
        得到;
        放;
    }

    [数据成员]
    公共字符串结果文本{
        得到;
        放;
    }

    [数据成员]
    公共字符串结果计数{
        得到;
        放;
    }

    [数据成员]
    公共字符串totalResultCount {
        得到;
        放;
    }

    [数据成员]公共方法响应结果结果[]结果{
        得到;
        放;
    }
}

[DataContract(命名空间=\"\")]
公共部分类 methodResponseResultsResult {

公共字符串 contactId
        {
            得到;
            放;
        }
    公共字符串显示名称
    {
        得到;
        放;
    }
}



  [服务合同]
    [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
    [ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)]
    公共类 WcfWrapperService
    {

 公共响应 GetXml()
        {
            字符串 uri = \"\"; // 源 Web 服务的 uri

            var dataContractSerializer = new DataContractSerializer(typeof(methodResponse));

                使用(XmlReader阅读器= XmlReader.Create(uri))
                {
                    var 结果 = (methodResponse)dataContractSerializer.ReadObject(reader);
//结果对象看起来像://结果.errorCode = 0;
                //结果.errorText = null;
                //结果.requestId = 234843080;
                //result.results = methodResponseResults[0];
                }


    // 返回响应对象
                }
        }
有errorCode、errorText、requestId值但没有结果。 ​​

相关文章