我似乎找不到JavaScriptSerializer对象,也找不到Visual Studio 2010中的System.Web.Script.Serialization名称空间。我需要把东西序列化成JSON应该用什么呢?

是的,我已经在项目中包含了System.Web.Extensions(在System.Web.Extensions.dll中)。这就是我震惊的原因吗?

我知道System.Web.Extensions在3.5被标记为过时


当前回答

using System.Web.Script.Serialization; 

在汇编中:System.Web.Extensions (System.Web.Extensions.dll)

其他回答

从谷歌上的第一个搜索结果中:

http://msdn.microsoft.com/en-us/library/system.web.script.serialization.javascriptserializer.aspx

JavaScriptSerializer类 为支持ajax的应用程序提供序列化和反序列化功能。 继承层次结构 系统。对象 System.Web.Script.Serialization.JavaScriptSerializer 名称空间:System.Web.Script.Serialization 程序集:System.Web.Extensions(在System.Web.Extensions.dll中)

因此,包括System.Web.Extensions.dll作为引用。

检查一下你是否包含了System.Web.Extensions的.net 4版本——也有3.5版本,但我认为这个不行。

下面这些步骤对我很有用:

创建一个新的控制台应用程序 将目标更改为.net 4,而不是Client Profile 添加一个System.Web.Extensions引用(4.0) 现在可以在Program.cs中访问JavaScriptSerializer了:-)

你的目标是。net 4框架还是。net 4客户端配置文件?

如果您的目标是后者,则找不到该类。你也可能丢失了一个引用,很可能是一个扩展dll。

我正在使用Visual Studio 2015,终于看到了这篇文章。

是的,为了使用

JavaScriptSerializer json = new JavaScriptSerializer();

您必须右键单击引用并在“程序集—>框架选择”下

System.Web.Extensions

然后加上你的推荐信

using System.Web.Script.Serialization;

你是否包含了System.Web.Extensions的引用?如果单击第一个链接,它会显示它在哪个程序集中。