我似乎找不到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;
using System.Web.Script;
using System.Web.Script.Serialization;
这对我很管用。
其他回答
using System.Web.Script.Serialization;
在汇编中:System.Web.Extensions (System.Web.Extensions.dll)
这是如何让JavaScriptSerializer在你的应用程序中可用,目标是。net 4.0(完整)
using System.Web.Script.Serialization;
这应该允许您创建一个新的JavaScriptSerializer对象!
你可以使用另一种选择,那就是Newtonsoft。Json,你可以从NuGet包管理器安装它。
工具>> Nuget包管理>>包管理控制台通过下发命令
安装包Newtonsoft。Json
or
通过使用工具>> Nuget包管理>>管理解决方案的Nuget包…
检查一下你是否包含了System.Web.Extensions的.net 4版本——也有3.5版本,但我认为这个不行。
下面这些步骤对我很有用:
创建一个新的控制台应用程序 将目标更改为.net 4,而不是Client Profile 添加一个System.Web.Extensions引用(4.0) 现在可以在Program.cs中访问JavaScriptSerializer了:-)
就像你知道的那样,我正在使用Visual Studio 2013,一直有同样的问题,直到我使用项目属性切换到3.5框架,然后回到4.5。出于某种原因,这正确地注册了.dll,我可以使用System.Web.Extensions。