C# play with json in dynamic

来源:互联网 发布:乌兹别克斯坦 知乎 编辑:程序博客网 时间:2024/05/19 04:28
var jsonString = @"{                                   'id': '4',                                   'first_name': 'Mark',                                   'gender': 'male',                                   'last_name': 'Zuckerberg',                                   'link': 'https://www.facebook.com/zuck',                                   'locale': 'en_US',                                   'name': 'Mark Zuckerberg',                                   'username': 'zuck',                                    'cars': {                                                'cnt':3,                                                 'name':'Toyota'                                            },                                    aricraft:null                                }";            JavaScriptSerializer serializer = new JavaScriptSerializer();            dynamic item = serializer.Deserialize<dynamic>(jsonString);            IDictionary<string, object> propertyValues = (IDictionary<string, object>)item;            if (propertyValues.ContainsKey("id"))                Console.WriteLine("Id is {0}", propertyValues["id"]);            if (!propertyValues.ContainsKey("id1"))                Console.WriteLine("id1 is not exists");            if (propertyValues.ContainsKey("cars"))            {                Console.WriteLine("Cars exists!");                var cars = propertyValues["cars"] as IDictionary<string, object>;                if (cars != null)                {                    Console.WriteLine("Cars count is {0}, name is {1}", cars["cnt"], cars["name"]);                }            }            if (propertyValues.ContainsKey("aricraft"))            {                Console.WriteLine("aricraft exists");                var aricraft = propertyValues["aricraft"] as IDictionary<string, object>;                if(aricraft == null)                    Console.WriteLine("aricraft value is not exists");            }

0 0