在.Net 4.0中找不到JavaScriptSerializer

我似乎无法findJavaScriptSerializer对象,也没有findVisual Studio 2010中的System.Web.Script.Serialization命名空间。我需要将某些东西序列化到JSON我应该使用什么?

是的,我已经在项目中包含了System.Web.Extensions (在System.Web.Extensions.dll中)。 这是为什么我感到震惊?

  • 我知道System.Web.Extensions在3.5中被标记为废弃

检查是否包含.net 4版本的System.Web.Extensions – 还有一个3.5版本,但我不认为这个工程。

这些步骤适用于我:

  1. 创build新的控制台应用程序
  2. 将目标更改为.net 4而不是客户端configuration文件
  3. 添加对System.Web.Extensions (4.0)的引用
  4. 现在可以访问Program.cs中的JavaScriptSerializer 🙂
  1. 右键单击ReferencesAdd Reference ,然后从Assemblies->FrameworkselectSystem.Web.Extensions
  2. 现在,您应该可以将以下内容添加到您的类文件中:
  using System.Web.Script.Serialization; 

从谷歌的第一个search结果:

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

JavaScriptSerializer类

为支持AJAX的应用程序提供序列化和反序列化function。

inheritance层次结构

System.Object的

System.Web.Script.Serialization.JavaScriptSerializer

命名空间:System.Web.Script.Serialization

程序集:System.Web.Extensions(在System.Web.Extensions.dll中)

因此, System.Web.Extensions.dll作为参考。

我正在使用Visual Studio 2015,最后跑过这篇文章。

是的,以便使用

 JavaScriptSerializer json = new JavaScriptSerializer(); 

您必须右键单击引用,然后在“程序集 – >框架”下select

 System.Web.Extensions 

然后添加您的参考

 using System.Web.Script.Serialization; 

这是如何在您的应用程序中获得JavaScriptSerializer,目标是.NET 4.0 (完整版)

 using System.Web.Script.Serialization; 

这应该允许你创build一个新的JavaScriptSerializer对象!

您是针对.NET 4框架还是.NET 4客户端configuration文件?

如果你瞄准后者,你不会find那个class。 你也可能会失去一个引用,可能是一个扩展DLL。

对于那些似乎是遵循上面的答案,但仍然存在问题的人(例如,看到对海报问题的第一个评论):

您可能正在与许多项目的解决scheme。 您似乎在工作的项目引用其他项目,但实际上是从其他项目之一修改文件。 例如:

  • 项目引用System.Web.Extensions
  • 项目引用项目B

但是,如果要修改为使用System.Web.Script.Serialization的文件位于项目B中,则还需要在项目B中添加对System.Web.Extension的引用。

您是否包含对System.Web.Extensions的引用? 如果你点击你的第一个链接,它说明它在哪个组件。

 using System.Web.Script.Serialization; 

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

您必须添加对项目的引用。

在Assemblies中,有一个System.Web.Extensions添加。

一旦完成,就把:

  using System.Web; using System.Web.Script; using System.Web.Script.Serialization; 

这对我有效。

只是你知道,我正在使用Visual Studio 2013,并有相同的问题,直到我使用项目属性切换到3.5框架,并返回到4.5。 这出于某种原因正确注册.dll,我可以使用System.Web.Extensions

在这里输入图像说明

在这里输入图像说明

你可以使用其他选项,这是NewtonsoftJASON,你可以从NuGet Package Manager中安装它。工具>> Nuget PacakgeManager

在这里输入图像说明