我有一个简单的 Json 字符串
{
"property1": "value1",
"property2": "value1"
}
我使用 System.Text.Json.Nodes 命名空间和以下行解析为 JsonObject
JsonObject obj = JsonNode.Parse(requestBody).AsObject();
如何获取 JsonObject 的属性名称(property1 和 property2)?
如果有替代方案,这会对我有帮助
最佳答案
你可以试试这个
JsonObject obj = JsonNode.Parse(requestBody).AsObject();
string[] propertyNames = obj.Select(p =>p.Key ).ToArray();
结果
["property1","property2"]
或
var doc = JsonDocument.Parse(json);
foreach (var property in doc.RootElement.EnumerateObject())
{
Console.WriteLine($"{property.Name} - {property.Value}");
}
结果
property1 - value1
property2 - value1
或者使用 linq
string[] propertyNames = doc.EnumerateObject().Select(p => p.Name ).ToArray();
关于c# - 在.NET 6中使用System.Text.Json.Nodes命名空间时如何获取JsonObject的Json属性名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73044017/