我有一个关于使用JScript .NET 4.0解析JSON数据的问题。我正在使用在Windows XP中运行的Visual Studio 2005来制作Windows表单(而不是网站)。
我的RESTful API调用以对象数组的形式返回JSON数据,例如:
[{"country": "USA", "state": "CA", "city": "San Francisco”}, {“country”: “USA”, “state”: “WA”, “city”: “Seattle”}, {"country": "USA", "state": “MA", "city": “Boston”}],
我不知道如何将其解析为可用对象。我想我需要像序列化器/反序列化器这样的东西,比如DataContractJsonSerializer,看看MSDN,但是在JScript .NET 4中实现它很困难。
答案 0 :(得分:0)
我不确定你是否已经离开了这个,我可能需要更多的信息来帮助,但我有一个集合脚本,作为一个库在jscript中做常见的事情。一个常见的任务是我可以从其中一个脚本调用一些api并让json返回。为了解析它,我去了json.org并下载了json2.js。一旦我知道了,我就可以打电话:
var data = JSON.parse(string_from_api)
就像我在现代浏览器上使用javascript一样。我将json2.js包含在与库中所有其他脚本相同的目录中。问题是JScript.net(据我所知)没有现代浏览器中的JSON对象。你必须自己添加它。完成后,您可以利用它提供的JSON对象序列化和反序列化。
答案 1 :(得分:-1)
这就是我所做的!
var cfg = eval('('+File.ReadAllText(Directory.GetCurrentDirectory()+"\\Config.json")+')');
Directory.GetCurrentDirectory()
是路径适用
File.ReadAllText(...)
是通过读取文件json
eval('('+ $$ +')')
.. Eval .. XD