C# 如何从json字符串读取数组中的属性名?
这是我收到的数据列表,财产名称可以不同C# 如何从json字符串读取数组中的属性名?,c#,json,json.net,C#,Json,Json.net,这是我收到的数据列表,财产名称可以不同 {"data":"[ { "id":"1", "name":"aa", "email":"aa@aa.com", "address":"11" }, { "id":"2", "name":"bb", "email":"bb@bb.com", "address":"22" } ]"} 这
{"data":"[
{
"id":"1",
"name":"aa",
"email":"aa@aa.com",
"address":"11"
},
{
"id":"2",
"name":"bb",
"email":"bb@bb.com",
"address":"22"
}
]"}
这是我的c代码
我在第三行有个错误。无法读取json数据。检查您键入的url。从“System.String”到“Newtonsoft.Json.Linq.JObject”的转换无效
我的输出怎么可能是这样的
身份证
名称
埃马尔
地址
如果我还考虑N级数组,比如地址>街道和地址>邮政编码,那就太好了。
非常感谢
var jObj = JObject.Parse(json);
var props = jObj["data"][0].Select(x => ((JProperty)x).Name).ToList();
顺便说一句:你的json不正确,应该是这样的
{data:[
{ "id":"1",
"name":"aa",
"email":"aa@aa.com",
"address":"11"
},
{"id":"2",
"name":"bb",
"email":"bb@bb.com",
"address":"22"
}
]}
请参见您的问题中的后面的数据
顺便说一句:你的json不正确,应该是这样的
{data:[
{ "id":"1",
"name":"aa",
"email":"aa@aa.com",
"address":"11"
},
{"id":"2",
"name":"bb",
"email":"bb@bb.com",
"address":"22"
}
]}
请参阅后面的数据:在您的问题中现在更新了json字符串,但我没有删除它,而是将其包装为如何从端点开始。@Cem它仍然不是有效的json。如何解析无效的JSON超出了这个问题的范围,我不知道如何轻松地完成它。@Cem请参阅{data:[…]}。它是一个对象数组还是一个字符串?在这种形式中两者都不是。很抱歉,我传递的是字符串而不是对象,因此,现在它可以正常工作。非常感谢。现在更新了json字符串,但我没有将其删除,而是将其包装为端点的形式。@Cem它仍然不是有效的json。如何解析无效的JSON超出了这个问题的范围,我不知道如何轻松地完成它。@Cem请参阅{data:[…]}。它是一个对象数组还是一个字符串?在这种形式中两者都不是。很抱歉,我传递的是字符串而不是对象,因此,现在它可以正常工作。谢谢。