我正在尝试从Web服务中获取JSON,我能够弄清楚。 BTW这是我的JSON数据
{
"X-YZ-111/AB.CD": {
"P1": "F",
"P2": "43.46"
},
"X-YZ-112/AB.CDRTE.D": {
"P1": "F",
"P2": "8.02"
}
}
现在我可以尝试将其解析为一个集合,其中每个项目都有“X-YZ-111 / AB.CD”作为名称属性,P1和P2作为其他2个属性,我将尝试绑定到稍后使用CollectionViewSource在UI中进行平铺。
我能够将JSON解析为我的类 -
var jObj = JObject.Parse(result);
var dict = jObj.Children()
.Cast<JProperty>()
.ToDictionary(p => p.Name,
p => new Tuple<string, string>((string)p.Value["P1"], (string)p.Value["P2"]));
但在解析JSON之后,在将dict集合添加到observable集合之前,我想从Name Property中删除“/”之后的所有字符。
因此,如果是"X-YZ-112/AB.CDRTE.D"
,我希望姓名为"X-YZ-112"
并删除"AB.CDRTE.D"
。我的Json数据有21个这样的对象,所有对象的Name都有这个无关的数据。无论如何,我可以在将这些字符添加到我的可观察集合之前剥离这些字符吗?
答案 0 :(得分:1)
如何创建新词典?
var newDict = dict.ToDictionary(kv => kv.Key.Split('/')[0], kv => kv.Value);
在解析你的json时你也可以做同样的事情。
p => p.Name.Split('/')[0],