解析JSON并删除多余的字符,然后再添加到可观察集合中



我正试图从web服务中获取JSON,这是我能够弄清楚的。这是我的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个属性,我将尝试绑定到一个Tile在UI使用CollectionViewSource稍后。

我能够解析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之后,在将字典集合添加到可观察集合之前,我想从名称属性中去掉"/"之后的所有字符。

如果是"X-YZ-112/AB.CDRTE.D",我希望Name为"X-YZ-112"并去掉"AB.CDRTE.D"。我的Json数据有21个这样的对象,所有对象的名称都有这种外部数据。无论如何,我可以剥离这些字符添加到我的可观察的集合之前?

创建一个新字典怎么样?

var newDict = dict.ToDictionary(kv => kv.Key.Split('/')[0], kv => kv.Value);

你也可以在解析json时做同样的事情。

p => p.Name.Split('/')[0],

相关内容

  • 没有找到相关文章