【问题标题】:Parse json string to find and element解析 json 字符串以查找和元素
【发布时间】:2018-08-07 22:14:52
【问题描述】:

我有以下 json:

{  
   "578080":{  
      "success":true,
      "data":{  
         "price_overview":{  
            "currency":"USD",
            "initial":1799,
            "final":1799,
            "discount_percent":0
         }
      }
   }
}

我想搜索“初始”。

如何使用 Json.Net 或 C# 中的任何其他有效方式来做到这一点?

注意:我没有尝试过任何事情,因为我不确定从哪里开始

【问题讨论】:

标签: c# json parsing json.net


【解决方案1】:

由于这是Dictionary<string,object>,您可以关注此Deserialize a Dictionary

public class PriceOverview
{
    public string currency { get; set; }
    public int initial { get; set; }
    public int final { get; set; }
    public int discount_percent { get; set; }
}

public class Data
{
    public PriceOverview price_overview { get; set; }
}

public class RootObject
{
    public bool success { get; set; }
    public Data data { get; set; }
}

var results = JsonConvert.DeserializeObject<Dictionary<string, RootObject>>(json);

foreach (var result in results)
{
   Console.WriteLine(result.Key);
   Console.WriteLine(result.Value.data.price_overview.currency);
   Console.WriteLine(result.Value.data.price_overview.initial);
   Console.WriteLine(result.Value.data.price_overview.final);
   Console.WriteLine(result.Value.data.price_overview.discount_percent);

}

输出

578080
USD
1799
1799
0

Full demo here

【讨论】:

  • 我是不是搞错了什么?为什么投反对票... 更仔细地查看他的代码
猜你喜欢
  • 2014-03-07
  • 1970-01-01
  • 2021-11-16
  • 2021-12-26
  • 2012-09-30
  • 1970-01-01
  • 2019-04-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多