zoukankan      html  css  js  c++  java
  • dynamic获取类型可变的json对象

    使用dynamic获取类型可变的json对象

    Dictionary<string, object> dict = new Dictionary<string, object>();
    List<dynamic> lst = new List<dynamic>() { new { aa = 1, bb = "2" } };
    Type type = lst[0].GetType();
    var ps = type.GetProperties();
    string[] propertyNames = ps.Select(p => p.Name).ToArray();
    foreach (var prop in propertyNames)
    {
    object propValue = type.GetProperty(prop).GetValue(lst[0], null);
    string value = (propValue != null) ? propValue.ToString() : "";
    if (!dict.ContainsKey(prop))
    {
    dict.Add(prop, value);
    Console.WriteLine("prop:" + prop + ", value:" + value);
    }
    }

     

    Console.WriteLine("*********************************************************");
    var serializer = new JavaScriptSerializer();
    string json = "{"banme":"asd"}";
    dynamic data = serializer.Deserialize(json, typeof(object)) as dynamic;
    var s = data.GetType().GetProperties();
    dict.Clear();
    foreach (var prop in data.Keys)
    {
    var value = data[prop];
    if (!dict.ContainsKey(prop))
    {
    dict.Add(prop, value);
    Console.WriteLine("prop:" + prop + ", value:" + value);
    }
    }
    Console.Read();

  • 相关阅读:
    Javaweb初试——选课系统
    Java四则运算第二次课堂完整版
    Java动手动脑03
    阅读笔记
    Java四则运算课堂测试三
    读书笔记
    Java日报10.14
    Java日报10.13
    Java动手动脑04
    2020.9.22测试
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/6228101.html
Copyright © 2011-2022 走看看