C# 如何从嵌套JObject获取特定属性的值
我有一个工作项目:C# 如何从嵌套JObject获取特定属性的值,c#,json,json.net,C#,Json,Json.net,我有一个工作项目: { "config": { "DataSource": { "connectionString": "Localserver", "sqlExpression": "select id As 'key', logHeader As 'Label' from Log" } } } 如何获取connectionString和sqlExpression的值 我正在努力: JObject result = new JObject(
{
"config": {
"DataSource": {
"connectionString": "Localserver",
"sqlExpression": "select id As 'key', logHeader As 'Label' from Log"
}
}
}
如何获取connectionString
和sqlExpression
的值
我正在努力:
JObject result = new JObject(
data["DataSource"]
.SelectMany(jt => jt["properties"]));
string connectionString = result.GetValue("connectionString").ToString();
string sqlExpression = result.GetValue("sqlExpression").ToString();
然而,我没有得到结果。有什么建议吗?对于这个简单的JSON结构,您可以使用方法导航到每个属性值:
JObject result = JObject.Parse(json);
string connectionString = (string)result.SelectToken("config.DataSource.connectionString");
string sqlExpression = (string)result.SelectToken("config.DataSource.sqlExpression");
Fiddle:那么你是用Json.Net来做的?您已经序列化了C#对象,因此您可以对其进行反序列化,并根据需要从对象中读取数据。更多答案请参阅