RestSharp XML反序列化将值设置为Null

时间:2017-01-26 12:36:33

标签: c# xml restsharp

RestSharp请求的XML序列化程序设置为DotNetXmlSerializer。

我使用RestSharp进行以下REST调用:

var response = restClient.Execute<TokenReponse>(request);

此调用产生以下响应:

<?xml version="1.0" encoding="utf-8"?>
<lsvt_apiResult 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <result>true</result>
    <data xsi:type="xsd:string">TokenStringValueHere</data>
</lsvt_apiResult>

TokenResponse是以下C#类:

 internal class TokenReponse
 {
    [XmlElement("result")]
    public string Result { get; set; }

    [XmlElement("data")]
    public string Token { get; set; }
 }

当RestSharp将XML反序列化为TokenResponse的实例时,&#39;结果&#39;财产正确设定;但是,令牌#39; property设置为null。我已经验证了XML响应在反序列化之前将数据设置为某个标记字符串值。如何正确设置&#39;令牌&#39;属性为&#39;数据的价值&#39; XML元素?

此外,当更改“令牌”的名称时,财产到&#39;价值&#39;该值设置为&#34; trueTokenStringValueHere&#34;收到上述XML响应时。

0 个答案:

没有答案