43

我正在尝试JavaScriptSerializer在我的应用程序中使用。

我最初收到

找不到 JavaScriptSerializer

我通过添加解决了它:

using System.Web.Script.Serialization;

但是随后子关键字Script用蓝线加下划线:

命名空间“System.Web”中不存在类型或命名空间“脚本”(您是否缺少程序集引用?)

因此,我在项目中添加了对以下内容的引用:

C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.0\System.Web.Extensions.dll

那没有帮助。我仍然收到相同的蓝色下划线和相同的错误。引用标有感叹号黄色警告:

在此处输入图像描述

我在这个线程上尝试了建议的解决方案,但正如@user781490 指出的那样,它们对我的情况没有帮助。

知道如何解决这个问题吗?

4

6 回答 6

49

我有同样的。脚本有下划线。我添加了对 System.Web.Extensions 的引用。此后,脚本不再加下划线。希望这可以帮助某人。

于 2015-03-31T19:35:18.920 回答
28

添加 System.Web.Extensions 作为对项目的引用

在此处输入图像描述

对于参考。

于 2017-08-27T12:22:26.963 回答
13

我发现这个 MSDN 论坛帖子为您的问题提出了两种解决方案

第一个解决方案(不推荐):

找到 .Net Framework 3.5 和 2.0 文件夹

将 System.Web.Extensions.dll 从 3.5 和 System.Web.dll 从 2.0 复制到应用程序文件夹

添加对这两个程序集的引用

更改引用的程序集属性,将“复制本地”设置为 true 并构建以测试您的应用程序以确保所有代码都可以工作

第二种解决方案(使用不同的类/库):

发布该问题的用户声称,Uri.EscapeUriString以及如何:序列化和反序列化 JSON 数据帮助他复制了JavaScriptSerializer.

您也可以尝试使用Json.Net。这是一个第三方库,非常强大。

于 2012-10-23T16:51:00.240 回答
7

只需添加对 System.Web.Extensions 的引用即可。

于 2016-01-20T04:48:19.280 回答
1

由于 JsonSerializer 在 .Net 4.0+ 中已弃用,我使用http://www.newtonsoft.com/json来解决此问题。

NuGet-> 安装包 Newtonsoft.Json

于 2015-09-11T19:54:03.070 回答
0

我已经尝试过了,您可以添加参考 web.extensions(我使用 .Net 框架 4.5)

于 2021-11-16T04:18:13.853 回答