我尝试使用c#从json获取id参数但没有成功。它是一个双数组(用户/警告)
JSON:
contents = "{\"users\":[{\"id\":64,\"username\":\"100146\",\"firstname\":\"NAME\",\"lastname\":\"LASTNAME PROFILI\",\"department\":\"\",\"firstaccess\":0,\"lastaccess\":0"}],\"warnings\":[]}"
这是我试过的
JavaScriptSerializer serializer = new JavaScriptSerializer();
object obj1 = serializer.DeserializeObject(contents);
object obj2 = obj1["users"];
string id = obj2["id"];
我在obj2中收到错误。 我不想创建一个用于解析JSON的类,只需从用户'中提取id值。数组就够了
谢谢你的时间!答案 0 :(得分:1)
尝试使用动态而非对象类型:
dynamic d = JObject.Parse("{\"users\":[{\"id\":64,\"username\":\"100146\",\"firstname\":\"NAME\",\"lastname\":\"LASTNAME PROFILI\",\"department\":\"\",\"firstaccess\":0,\"lastaccess\":0"}],\"warnings\":[]}");
var usersCount = d.users.Count;
var warningsCount = d.warnings.Count;
var id = d.users[0].id;
答案 1 :(得分:0)
尝试使用Newtwonsoft:
var json = "{\"users\":[{\"id\":64,\"username\":\"100146\",\"firstname\":\"NAME\",\"lastname\":\"LASTNAME PROFILI\",\"department\":\"\",\"firstaccess\":0,\"lastaccess\":0}],\"warnings\":[]}";
dynamic data = JObject.Parse(json);
var id = data.users[0].id;
答案 2 :(得分:0)
我没试过但尝试使用object1 [“users”] [“id”]