zoukankan      html  css  js  c++  java
  • c# json转换成dynamic对象,然后在dynamic对象中动态获取指定字符串列表中的值

    using Newtonsoft.Json;
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;

    namespace ConsoleApp1
    {
    class Program
    {
    static void Main(string[] args)
    {

    string ss = TestAA();
    Console.WriteLine(ss);
    Console.ReadKey();
    }

    private static string TestAA()
    {
    string allowAttr = string.Empty;
    string json = "{"UserName":"Jack","LoS":"Beijing","Group":"34"}";
    //此处模拟在不建实体类的情况下,反转将json返回成dynamic对象
    var DynamicObject = JsonConvert.DeserializeObject<dynamic>(json);
    //var _value = DynamicObject["LoS"];
    List<string> ssList = new List<string>();
    ssList.Add("LoS");
    ssList.Add("Test2");
    foreach(string item in ssList)
    {
    var value2 = DynamicObject[item];//动态获取字符串列表中的字段去dynamic对象中找对应字段的值
    if(value2!=null)
    {
    allowAttr = string.Format("{0}{1}", value2, "_Attribute");
    //string allowAttr2 = string.Format("{0}{1}", value2.Value, "_Attribute");
    }
    }

    return allowAttr;
    //Console.WriteLine(DynamicObject.LoS);
    //Type Ts = DynamicObject.GetType();
    //object o = Ts.GetProperty("Name").GetValue(DynamicObject, null);
    //string Value = Convert.ToString(o);
    //if (string.IsNullOrEmpty(Value))
    //{
    // return null;
    //}
    //else
    //{
    // return Value;
    //}
    }
    }
    }

  • 相关阅读:
    佛教哲学 学习笔记 01-我愿为十方人做桥
    动手学python之python基础:标识符,注释及缩进
    动手学python系列序言
    基于深度学习的目标检测综述(一):简介及骨干网络
    软件项目风险管理
    axure
    软件项目管理
    软件测试方法
    期中总结
    UML图相关
  • 原文地址:https://www.cnblogs.com/klsw/p/8641954.html
Copyright © 2011-2022 走看看