所以我试图使用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”对象有关...
谢谢!
答案 0 :(得分:2)
最终意识到这个问题是什么。实现这一目标所需的变化是对“玩家”类进行这些更改......
public class Player {
/* other properties */
List<Picks> PickList { get; set; }
}
问题出现了,因为RestSharp很困惑,因为Property的名称(“Picks”)与它试图反序列化的Object Type(“Picks”)相同。