我似乎找不到JavaScriptSerializer对象,也找不到Visual Studio 2010中的System.Web.Script.Serialization名称空间。我需要把东西序列化成JSON应该用什么呢?
是的,我已经在项目中包含了System.Web.Extensions(在System.Web.Extensions.dll中)。这就是我震惊的原因吗?
我知道System.Web.Extensions在3.5被标记为过时
我似乎找不到JavaScriptSerializer对象,也找不到Visual Studio 2010中的System.Web.Script.Serialization名称空间。我需要把东西序列化成JSON应该用什么呢?
是的,我已经在项目中包含了System.Web.Extensions(在System.Web.Extensions.dll中)。这就是我震惊的原因吗?
我知道System.Web.Extensions在3.5被标记为过时
当前回答
右键单击引用并添加引用,然后从程序集->框架中选择System.Web.Extensions。 现在你应该能够将以下内容添加到类文件中:
using System.Web.Script.Serialization;
其他回答
从谷歌上的第一个搜索结果中:
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。
一旦完成,请:
using System.Web;
using System.Web.Script;
using System.Web.Script.Serialization;
这对我很管用。
检查一下你是否包含了System.Web.Extensions的.net 4版本——也有3.5版本,但我认为这个不行。
下面这些步骤对我很有用:
创建一个新的控制台应用程序 将目标更改为.net 4,而不是Client Profile 添加一个System.Web.Extensions引用(4.0) 现在可以在Program.cs中访问JavaScriptSerializer了:-)
using System.Web.Script.Serialization;
在汇编中:System.Web.Extensions (System.Web.Extensions.dll)
对于那些似乎按照上面的答案,但仍然有问题的人(例如,见帖子问题的第一条评论):
您可能正在处理许多项目的解决方案。您似乎正在使用的项目引用其他项目,但实际上您正在修改来自其他项目之一的文件。例如:
项目A引用System.Web.Extensions 项目A引用项目B
但是,如果您正在修改以使用System.Web.Script.Serialization的文件在项目B中,那么您还需要在项目B中添加对System.Web.Extension的引用。