C#中已经有JavaScriptSerializer类可以将json数据给反序列化为对象
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
/// <summary> /// JSON文本转对象,泛型方法 /// </summary> /// <typeparam name=”T”>类型</typeparam> /// <param name=”jsonText”>JSON文本</param> /// <returns>指定类型的对象</returns> public static T JSONToObject<T>( string jsonText)
{ JavaScriptSerializer jss = new JavaScriptSerializer();
try { return jss.Deserialize<T>(jsonText);
} catch (Exception ex)
{ throw new Exception(“JSONHelper.JSONToObject(): ” + ex.Message);
} } |
但像我这样的懒人是不想事先定义好一个类的,我就是想直接解析客户端传过来的json数据,还是使用MSScriptControl.ScriptControl吧。
有了eval方法,想怎么搞就怎么搞
//构建scriptcontrol读取客户端传递过来的json数据
1
2
3
|
MSScriptControl.ScriptControl sc = new MSScriptControl.ScriptControl();
sc.Language=”JScript”; sc.AddCode(“var jsonObject=”+data ); //data为提交的json文本
|
然后就可以根据json的结构用eval了,js里怎么写就怎么写。
如sc.Eval(“jsonObject.content.length”)
sc.Eval(“jsonObject.itemValue”)
要使用MSScriptControl需要引用com组件 Microsoft Script Control 1.0。
以上这篇使用MSScriptControl 在 C# 中读取json数据的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。