使用MSScriptControl 在 C# 中读取json数据的方法

时间:2022-01-11 18:13:24

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数据的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。