小编Cas*_*iel的帖子

使用 System.text.json 选择 json 的一部分

我开始 C# 并反序列化 Json。在我的培训中,我学习了 Newtonsoft,但我想对 system.text.json 做同样的事情

有了这个 json,我想选择

  • 搜索产品 > 特色产品 AND
  • 搜索产品 > 产品详情

制作一个对象列表。

https://api.nvidia.partners/edge/product/search?page=1&limit=9&locale=fr-fr&category=GPU&gpu=RTX%203090,RTX%203080%20Ti,RTX%203080,RTX%203070%20Ti,RTX%203070,RTX%203060%20Ti,RTX%203060&gpu_filter=RTX%203090~12,RTX%203080%20Ti~7,RTX%203080~16,RTX%203070%20Ti~3,RTX%203070~18,RTX%203060%20Ti~8,RTX%203060~2,RTX%202080%20SUPER~1,RTX%202080~0,RTX%202070%20SUPER~0,RTX%202070~0,RTX%202060~6,GTX%201660%20Ti~0,GTX%201660%20SUPER~9,GTX%201660~8,GTX%201650%20Ti~0,GTX%201650%20SUPER~3,GTX%201650~17
Run Code Online (Sandbox Code Playgroud)

班级

public class CarteGraphique
{
    public string displayName { get; set; }
    public string prdStatus { get; set; }
    public List<Retailer> retailers { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

使用 Newtonsoft,我执行以下操作:

牛顿软件

JObject jsonParse = JObject.Parse(json);

IList<CarteGraphique> products = new List<CarteGraphique>();

IList<JToken> productDetailsParse = jsonParse["searchedProducts"]["productDetails"]
    .Children()
    .Where(n => n["isFounderEdition"].Value<bool>() == true)
    .ToList();
var featuredProductParse = jsonParse["searchedProducts"]["featuredProduct"];


foreach (JToken item in productDetailsParse)
{
    CarteGraphique result …
Run Code Online (Sandbox Code Playgroud)

c# json system.text.json

7
推荐指数
1
解决办法
5287
查看次数

标签 统计

c# ×1

json ×1

system.text.json ×1