17

我正在尝试添加参考“Newtonsoft.Json.dll”,我已按照他的要求进行操作。它将这个参考从“浏览”选项卡添加到“最近”选项卡。如果我查看 ref 列表中的 ref 列表,它会被列出,但带有黄色标志。

当我将光标悬停在标志上时,它说:不可用,因为它不存在,或者未构建?因此,我已将其从 ref 列表中删除并尝试重新添加它。

它只出现在“最近”部分,当我添加它时,我得到:

无法添加对“Newtonsoft.Json.dll”的引用。

4

6 回答 6

35

可能在您的构建系统中:dll 可能已被清理(如通过重建删除),或者位于不在您的解决方案下的目录中,或者根本没有被复制到输出目录。

很抱歉,我没有更具体的建议。不过,我要做的是建议您使用霰弹枪杀死蚊子:使用NuGet。在带有 Visual Studio(或任何其他 .net IDE)的 C# 中,您真的想使用 nuget 包管理器,因为它运行良好。

  1. 安装视觉工作室扩展,
  2. 右键单击您的解决方案(不要做项目,做解决方案)
  3. 选择“管理解决方案的 Nuget 包”
  4. 点击“在线”,在搜索框中输入“newtonsoft”
  5. 单击“Json.NET”上的“安装”(可能您要查找的内容可能在另一个包中,我会要求您跟踪它)。

这会将其放在库目录中,将其包含在构建路径中,并允许您使用 Intelli 感知从项目中自动添加适当的引用。

于 2013-08-14T11:17:10.003 回答
4

确保您的项目目标框架设置为正确的版本。可能是您的项目目标 .NET 框架低于构建 Newtonsoft dll 的框架。右键单击您的项目并查看它的设置。你需要去查看属性。

于 2013-08-14T11:11:10.653 回答
2

我有同样的问题。

Nuget 有效,但对于较旧的 Visual Studio,例如 2005/2008,它可能会很棘手(不幸的是,这就是我的情况)。

我在这里下载了 Json.NET 。在二进制文件中,选择与您的 .Net Framework 版本匹配的那个,将 dll 添加到项目的文件夹中(例如 lib),并将其作为参考。然后,玩得开心!

于 2014-08-20T21:12:33.813 回答
1

好的,这是一个愚蠢的答案,但有时您会犯愚蠢的错误......:如果您的解决方案中有多个子项目,请确保添加对正确的一个(或全部)的引用!

于 2014-04-17T07:59:51.563 回答
0

检查 Json.net 是否已安装在您的项目中。

如果已经安装,请从“packages.config”文件中删除“package”条目。现在转到 NuGet“包管理器控制台”并使用以下命令安装新包:

PM> Install-Package Newtonsoft.Json {Your Project Name} 6.0.3 nuget.org

如果未安装,请转到 NuGet 并搜索 JSon.Net 并选择项目并单击安装。

斯里坎特

于 2014-06-26T07:24:53.987 回答
0

就我而言,我遇到了同样的问题,然后我可以通过发布文章来解决

http://microsoft-ssis.blogspot.com/2011/05/referencing-custom-assembly-inside.html

将程序集添加到 GAC 在我们可以使用我们的程序集之前,我们必须将它添加到全局程序集缓存 (GAC)。再次打开 Visual Studio 2008 命令提示符(对于 Vista/Windows7/等,以管理员身份打开)。并执行以下命令。gacutil /id:\myMethodsForSSIS\myMethodsForSSIS\bin\Release\myMethodsForSSIS.dll

于 2019-01-03T10:54:15.890 回答