C# 在.Net 4.0中找不到JavaScriptSerializer
在VisualStudio2010中,我似乎找不到对象或C# 在.Net 4.0中找不到JavaScriptSerializer,c#,visual-studio,jsonserializer,C#,Visual Studio,Jsonserializer,在VisualStudio2010中,我似乎找不到对象或System.Web.Script.Serialization命名空间。我需要将一些东西序列化为JSON我应该使用什么 是的,我已经在项目中包含了System.Web.Extensions(在System.Web.Extensions.dll中)。这就是为什么我感到震惊 我知道System.Web.Extensions标记为3.5 来自谷歌的第一个搜索结果: JavaScriptSerializer类 为支持AJAX的应用程序提供序列化
System.Web.Script.Serialization
命名空间。我需要将一些东西序列化为JSON我应该使用什么
是的,我已经在项目中包含了System.Web.Extensions
(在System.Web.Extensions.dll中)。这就是为什么我感到震惊
- 我知道
标记为3.5System.Web.Extensions
因此,请包括
System.Web.Extensions.dll
作为参考。您的目标是.NET 4 framework还是.NET 4客户端配置文件
如果你的目标是后者,你就找不到那个类。您还可能缺少一个引用,很可能是扩展dll。您是否包含了对
System.Web.extensions
的引用?如果您单击第一个链接,它会显示它所在的程序集。检查您是否包含.net 4版本的System.Web.Extensions
-还有3.5版本,但我认为这一版本不起作用
这些步骤对我很有用:
System.Web.Extensions
(4.0)的引用JavaScriptSerializer
:-)这是如何使JavaScriptSerializer在应用程序中可用,目标是
.NET 4.0
(完整)
这应该允许您创建一个新的
JavaScriptSerializer
对象 您必须将引用添加到项目中
在程序集中,有一个System.Web.Extensions添加该扩展
完成后,将:
using System.Web;
using System.Web.Script;
using System.Web.Script.Serialization;
这对我很管用
References
并执行addreference
,然后从Assemblies->Framework
选择System.Web.Extensions
使用System.Web.Script.Serialization;
对于那些似乎在遵循上述答案但仍然存在问题的人(例如,请参见关于海报问题的第一条评论):
您可能正在处理一个包含许多项目的解决方案。您似乎正在使用的项目引用了其他项目,但实际上您正在修改其他项目之一的文件。例如:
- 项目A引用了
System.Web.Extensions
- 项目A参考项目B
System.Web.Script.Serialization
的文件位于项目B中,则还需要在项目B中添加对System.Web.Extension
的引用
using System.Web.Script.Serialization;
正在汇编中:System.Web.Extensions(System.Web.Extensions.dll)我正在使用Visual Studio 2015,最后我浏览了这篇文章 是为了使用
JavaScriptSerializer json = new JavaScriptSerializer();
必须右键单击引用,然后在“程序集-->框架”下选择
System.Web.Extensions
然后添加您的参考资料
using System.Web.Script.Serialization;
正如您所知,我使用的是Visual Studio 2013,在使用项目属性切换到3.5 framework并返回到4.5之前,我也遇到了同样的问题。出于某种原因,我正确注册了.dll,我可以使用System.Web.Extensions
您可以使用另一个选项,即Newtonsoft.Json,您可以从NuGet Package Manager安装它 工具>>Nuget软件包管理器>>通过发出命令实现软件包管理器控制台
安装软件包Newtonsoft.Json
或
通过在Tools>>Nuget软件包管理器>>管理解决方案的Nuget软件包中使用GUI
在这种情况下,可以查看@Christopher的答案..NET Framework 4。我已经在项目中包含了“System.Web.Extensions”,这是您从早期版本的.net升级的项目吗?我升级的项目有这个问题。但是,使用原始的.net版本(3.5)似乎无法解决这个问题……我也有同样的问题,我必须说答案是毫无用处的。我的目标是“.NET Framework 4”,而不是“.NET 4客户端配置文件”。我已引用System.Web.Extensions程序集。但当我尝试使用System.Web.Script.Serialization命名空间时,VS 2010告诉我“命名空间System.Web中不存在类型或命名空间脚本”。有人找到了真正的解决办法吗?我被难住了!相关文章。两年后,在一个完全不相关的项目上:如果你正确地利用它,它也会有帮助>>(它不是JavascriptSerializer)。太好了,我甚至忘了做一些像That thank you Great这样的事情!详细解释请注意,这是微软的。在.Net Core上,Microsoft甚至不再提供JavaScriptSerializer(也不再提供System.Web.Extensions的其余部分)。脚本不存在于vb.Net中。不要忘记“new”和()如:Dim JsonConvert As new JavaScriptSerializer()
using System.Web.Script.Serialization;