gpt4 book ai didi

c# - 遍历通用对象属性

转载 作者:太空宇宙 更新时间:2023-11-03 19:52:28 25 4
gpt4 key购买 nike

我有一个像这样存储在数据库中的 JSON 字符串:

{
"Error": "Lol",
"ErrorDate": "2016-05-13T10:43:27.6365795Z",
"Application": "Business",
"UserName": "Josh",
"TraceSession": "moo"
}

表中每个项目的 JSON 字符串都不同。在我的应用程序中,我想将其反序列化为一个对象,但由于 JSON 始终不同,我无法创建模型。

目前我有这个:

var jObject = JsonConvert.DeserializeObject(FieldNames);

我认为这可行,但现在我需要遍历属性以获取 名称和值。我试过这个:

// For each property in our oject
foreach (var key in jObject.GetProperties())
{

// Create a list
var list = new List<string>();
list.Add(key.GetValue());

// Add our substitution
email.AddSubstitution($"--{ key.ToUpper() }--", list);
}

但它失败了,因为

'object' does not contain a definition for 'GetProperties'

有谁知道我该如何解决这个问题?

最佳答案

A JObject本质上是一个字典。您可以像这样遍历键/值:

class Program
{
static void Main(string[] args)
{
const string json = "{ " +
"\"Error\": \"Lol\", " +
"\"ErrorDate\": \"2016-05-13T10:43:27.6365795Z\", " +
"\"Application\": \"Business\", " +
"\"UserName\": \"Josh\", " +
"\"TraceSession\": \"moo\" " +
" }";

var jobj = JObject.Parse(json);

foreach (var prop in jobj)
{
Console.WriteLine("Key: {0}, Value: {1}", prop.Key, prop.Value);
}
}
}

关于c# - 遍历通用对象属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37215126/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com