我正在使用 C# .NET 4.0 将 JSON 解析为自定义对象。我正在使用 JavaScriptSerializer.Deserialize 将其映射到我编写的类。问题是,JSON 的名称/值对不是静态的,并且根据参数 isChain 的不同而有所不同,如以下 JSON 片段所示(底部有更好的链接):
{
"STATE_WALK_LEFT":{
"isChain":"1",
"x":"1"
},
"STATE_WALK_LEFT_0":{
"x":"0"
},
"STATE_WALK_LEFT_1":{
"x":"40"
},
"STATE_WALK_LEFT_2":{
"x":"80"
},
"STATE_WALK_RIGHT":{
"isChain":"0"
},
"STATE_RUN_LEFT":{
"isChain":"0"
}
}
链可以在链中包含从 _STATE_0 到 _STATE_25 的任何条目。有什么方法可以存储这些数据,所以我不必像这样编写 12*26 空类:
public StateWalkLeft0 STATE_WALK_LEFT { get; set; }
public StateWalkLeft0 STATE_WALK_LEFT_0 { get; set; }
public StateWalkLeft1 STATE_WALK_LEFT_1 { get; set; }
public StateWalkLeft2 STATE_WALK_LEFT_2 { get; set; }
public StateWalkLeft3 STATE_WALK_LEFT_3 { get; set; }
是否有一个库或其他方法可以用来部分解析STATE_0、STATE_1 等字段?您能否建议一种方法来添加这些最近添加的 JSON 对?
编辑澄清:为了了解我正在使用的内容,这里是从 JSON 派生的类:
基本上,我只需要一种方法以某种方式将这些最近实现的链存储在此类中以进行处理。所有这些类/属性都是从这些 JSON 生成的。