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;
//}
}
}
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM