【发布时间】:2016-09-09 22:52:30
【问题描述】:
我有一个 JSON 字符串存储在这样的数据库中:
{
"Error": "Lol",
"ErrorDate": "2016-05-13T10:43:27.6365795Z",
"Application": "Business",
"UserName": "Josh",
"TraceSession": "moo"
}
表中每个项目的 JSON 字符串都不同。 在我的应用程序中,我想将其反序列化为一个对象,但由于 JSON 始终不同,我无法创建模型。
目前我有这个:
var jObject = JsonConvert.DeserializeObject(FieldNames);
我认为这会起作用,但现在我需要遍历属性以获取 key 名称和值。我试过这个:
// 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”不包含“GetProperties”的定义
有谁知道我该如何解决这个问题?
【问题讨论】:
-
你不需要先反序列化到一个对象类型
-
为什么不创建一个类来反序列化呢?然后你有一个很好的简单对象可以使用
-
正如我所说,每行的 JSON 都会发生变化