我必须将给定的 JSON 字符串读入 C# 对象。到目前为止一切都很好,但这个案子对我来说有点特别。JSON 字符串包含 2 个实体。一个是平面对象,第二个是列表,至少在 JSON 中是合乎逻辑的,但不是真正的。我希望你能帮助我找到解决这个问题的方法。
为了更好地解释它,我将向您展示我的 JSON 输入的一部分:
{
"game":{"GameMode":"1","IsNetworkMode":"1","NbMaxPlayer":"12","GameState":"1"},
"player_56":{"PlayerUserId":"137187","PlayerIALevel":"-1","PlayerObserver":"0"},
"player_7":{"PlayerUserId":"3440","PlayerIALevel":"-1","PlayerObserver":"0"}
}
我想将 Player 实体序列化为此类对象的集合。问题是它们并没有真正存储为 JSON 中的集合。它们的动态名称为“player_56”,并且数字不是像“1,2,3”这样的任何逻辑顺序。
目前我正在使用DataContractJsonSerializer
这个任务。
[DataContract]
public class AlbReplay
{
[DataMember(Name = "game")]
public AlbGame Game { get; set; }
[DataMember(Name = "player")]
public List<AlbPlayer> Players { get; set; }
}
有什么建议么?