RestSharp双嵌套元素未被反序列化

时间:2012-08-30 15:26:34

标签: xml serialization restsharp

所以我试图使用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 minimum)。

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

谢谢!

1 个答案:

答案 0 :(得分:2)

最终意识到这个问题是什么。实现这一目标所需的变化是对“玩家”类进行这些更改......

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

问题出现了,因为RestSharp很困惑,因为Property的名称(“Picks”)与它试图反序列化的Object Type(“Picks”)相同。