【问题标题】:RestSharp double-nested elements not being DeserializedRestSharp 双嵌套元素未被反序列化
【发布时间】:2012-08-31 21:54:48
【问题描述】:

所以我尝试使用来自 RestSharp 的默认 XmlDeserializer 来反序列化以下 XML 结构。对于我的生活,我根本无法让“精选”被反序列化。

<PlayerList>
   <Player>
      <PlayerName>Name</PlayerName>
      <PlayerRank>5</PlayerRank>
      <Picks>
         <PickID>1</PickID>
         <Status>Active</Status>
         <CreatedDate>2012-08-30 09:43:38</CreatedDate>
      </Picks>
      <Picks>
         <PickID>2</PickID>
         <Status>Disabled</Status>
         <CreatedDate>2012-08-30 09:49:33</CreatedDate>
      </Picks>
   </Player>
</PlayerList>

我最接近的是在“玩家”类中将它们定义为......

public class Player {
    /*other properties*/
    public List<Picks> Picks { get; set; }
}

它确实返回了一个“Picks”对象,其所有属性都设置为 null(或 DateTime 最小值)。

构造可序列化 C# 类以获取从每个 Picks 返回的数据的正确方法是什么?我想知道它是否与具有复数名称的“Picks”对象有关......

谢谢!

【问题讨论】:

    标签: xml serialization restsharp


    【解决方案1】:

    最终意识到这是什么问题。让它工作所需的更改是对“播放器”类进行这些更改...

    public class Player {
        /* other properties */
        List<Picks> PickList { get; set; }
    }
    

    出现问题是因为 RestSharp 感到困惑,因为属性的名称(“Picks”)与它试图反序列化的对象类型(“Picks”)相同。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多