如何利用Newtonsoft.Json 读取json数据
网上搜索到的都是下面的方法
string jsonText = "['JSON!',1,true,{property:'value'}]";
JsonReader reader = new JsonReader(new StringReader(jsonText));
Console.WriteLine("TokenType\t\tValueType\t\tValue");
while (reader.Read())
{
Console.WriteLine(reader.TokenType + "\t\t" + WriteValue(reader.ValueType) + "\t\t" + WriteValue(reader.Value))
}
List<Model.AA> AA= (from l in WebUI.NoSqlListObject.CacheDependencyObject.lsAA select l).ToList();
HttpContext.Current.Response.Write(JsonConvert.SerializeObject(AA));
using Newtonsoft.Json.Linq;
JObject jo = JObject.Parse("{"xx":12}");
var str=jo.ToString();
//木有遇到这个问题!
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/plain";
string[] name = { "zhangsan", "lisi", "wangwu" };
System.Collections.Generic.IList<Model> ilist = new System.Collections.Generic.List<Model>();
for (int i = 0; i < name.Length; i++)
{
Model model = new Model();
model.ID = i + 1;
model.Name = name[i];
ilist.Add(model);
}
string json = Newtonsoft.Json.JavaScriptConvert.SerializeObject(ilist);
context.Response.Write(json);
}
public class Model
{
private int iD;
public int ID
{
get { return iD; }
set { iD = value; }
}
private string name;
public string Name
{
get { return name; }
set { name = value; }
}
}
//刚没注意看你是反序列化
StringBuilder sb = new StringBuilder();
string str = "[{ID:'1',Name:'zhangsan',Other:[{Age:'111'}]}]";
JavaScriptArray javascript = (JavaScriptArray)JavaScriptConvert.DeserializeObject(str);
if (javascript.Count > 0)
{
JavaScriptObject obj = (JavaScriptObject)javascript[0];
sb.Append("ID:" + obj["ID"].ToString() + "<br/>");
sb.Append("Name:" + obj["Name"].ToString() + "<br/>");
JavaScriptArray json = (JavaScriptArray)obj["Other"];
if (json.Count > 0)
{
JavaScriptObject jsonobj = (JavaScriptObject)json[0];
sb.Append("Age:" + jsonobj["Age"].ToString());
}
}
Response.Write(sb.ToString());