c# – 使用JSON.NET读取动态属性名称
发布时间:2020-12-15 19:27:59 所属栏目:百科 来源:网络整理
导读:我正在使用来自返回 JSON的外部API的数据,如下所示. { "data": { "4": { "id": "12","email": "q23rfedsafsadf","first_name": "lachlan", 使用JSON.NET,我如何获得4值?这是动态的,因为它改变了每条记录(不是我用过的最理想的API). 解决方法 这是一个有效的
我正在使用来自返回
JSON的外部API的数据,如下所示.
{ "data": { "4": { "id": "12","email": "q23rfedsafsadf","first_name": "lachlan", 使用JSON.NET,我如何获得4值?这是动态的,因为它改变了每条记录(不是我用过的最理想的API). 解决方法
这是一个有效的dotNetFiddle:
https://dotnetfiddle.net/6Zq5Ry
这是代码: using System; using Newtonsoft.Json; using System.Collections.Generic; public class Program { public static void Main() { string json = @"{ 'data': { '4': { 'id': '12','email': 'lachlan12@somedomain.com','first_name': 'lachlan' },'5': { 'id': '15','email': 'appuswamy15email@somedomain.com','first_name': 'appuswamy' } } }"; var data = JsonConvert.DeserializeObject<RootObject>(json); Console.WriteLine("# of items deserialized : {0}",data.DataItems.Count); foreach ( var item in data.DataItems) { Console.WriteLine(" Item Key {0}: ",item.Key); Console.WriteLine(" id: {0}",item.Value.id); Console.WriteLine(" email: {0}",item.Value.email); Console.WriteLine(" first_name: {0}",item.Value.first_name); } } } public class RootObject { [JsonProperty(PropertyName = "data")] public Dictionary<string,DataItem> DataItems { get; set; } } public class DataItem { public string id { get; set; } public string email { get; set; } public string first_name { get; set; } } 这是输出: (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |