访问json对象值
本文关键字:对象 json 访问 | 更新日期: 2023-09-27 18:11:32
我有一个这个代码在asp.net ashx文件:
jsonString="{'id':'54','name':'reza'}";
JavaScriptSerializer j = new JavaScriptSerializer();
var a = j.Deserialize(jsonString, typeof(object));
并获得Json字符串并转换为'a'对象,我如何获得a的值?例如,我需要获取id字段值为[id,54] ?
由于您没有为反序列化指定强类型目标类型(object
除外),因此JavaScriptSerializer
将返回Dictionary<string, object>
,您必须按照以下方式访问它:
string jsonString = "{'id':'54','name':'reza'}";
JavaScriptSerializer j = new JavaScriptSerializer();
dynamic data = j.Deserialize(jsonString, typeof(object));
string id = data["id"]; // equals 54
但是,您最好定义自己的自定义类型来访问反序列化的数据。比如:public class Person
{
public string id { get; set; }
public string name { get; set; }
}
string jsonString = "{'id':'54','name':'reza'}";
JavaScriptSerializer j = new JavaScriptSerializer();
Person person = j.Deserialize<Person>(jsonString);
string id = person.id; // equals 54