gpt4 book ai didi

c# - 无法识别用于 silverlight 的 JSON.net 5.0 nuget 包

转载 作者:行者123 更新时间:2023-11-30 13:01:09 25 4
gpt4 key购买 nike

原始问题:

我是否需要更改 namespace 、Newtonsoft.Json 或 packages.config 文件,以便 Visual Studio 2010、Silverlight 5、NuGet 和 JSON.Net 一起正常运行?

更新后:

是否有适用于 Silverlight 5 的 Json.Net 程序集(或 NuGet 程序包)?

我有一个包含多个项目的解决方案,其中项目引用 JSON.net 库。我正在重构 Visual Studio 解决方案以使用 NuGet 而不是静态的下载版本(然后引用 DLL 文件)。

右键单击项目并选择“管理 NuGet 程序包”按预期工作,让我将 Json.net 程序包安装到解决方案中的 .NET 3.5 项目和解决方案中的 Silverlight 项目。一切看起来都很好点。

我将设置设置为搜索更新并授予 NuGet 下载丢失包的权限。

在 3.5 和 Silverlight 5 项目引用中找到的 packages.config 文件:

package id="Newtonsoft.Json" version="5.0.8" targetFramework="net35"

package id="Newtonsoft.Json" version="5.0.8" targetFramework="sl50"

分别。

编译 .Net 3.5 项目没有错误,但对于 Silverlight 5 项目,您得到:

The type or namespace name 'Newtonsoft' could not be found (are you missing a using directive or an assembly reference?)
C:\CognexWorkSpace\TAF_Tools\src\TypeSafeEnumeration.Common\Enumeration.Serialization.cs

是否需要更改 namespace 、Newtonsoft.Json 或 packages.config 文件,以便 Visual Studio 2010、Silverlight 5、NuGet 和 JSON.Net 一起正常运行?

FWIW:Visual Studio 2010 Intellisense 标记行:

using Newtonsoft.Json;

未解决,但同样只在 Silverlight 5 项目中。

更新

我应该更清楚解决方案的结构。目前,我有两个从 Json.net 4 源代码编译的项目(Json.Net35 和 json.Silverlight)。解决方案中的其他项目然后引用该项目所需的 JSON 序列化程序的特定变体。

解决方案的重构是升级导致实现 NuGet 的代码库。由于 NuGet 方法暂时受阻,我想直接引用 Json.net DLL。但是,当我下载二进制文件时,ZIP 存档仅包含这些变体:

Net20
Net35
Net40
Net45
Portable
Portable40
WinRT

这个问题现在变成了:

是否有适用于 Silverlight 5 的 Json.Net 程序集(或 NuGet 程序包)?

如果不是这样,那将很容易解释我开始时遇到的 NuGet 包问题,我又回到了原始(当前)方法,但使用了更新版本的源代码。

最佳答案

如果您使用的是 VS2010,则不支持 Portable 项目,您需要返回到 4.5 版本的 Json.Net。无论如何,我不确定 Silverlight 是否可以利用任何改进,因为可移植项目通常不包括 Json.Net 的许多更新功能。

这尤其适用于 Silverlight,因为这些项目需要是 Portable40 项目,而不仅仅是 Portable 类本身。

关于c# - 无法识别用于 silverlight 的 JSON.net 5.0 nuget 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20362467/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com