gpt4 book ai didi

c# - 无法卸载/重新安装 NuGet 包

转载 作者:IT王子 更新时间:2023-10-29 04:03:11 30 4
gpt4 key购买 nike

我已经使用 Visual Studio Express 2012 设置了我的项目,添加了一些 C# 代码,并成功编译/部署到模拟器。在某些时候,我决定要用 JSON 做点什么,我发现我应该使用 Json.NET 框架,即 available as a NuGet package .我已经使用命令 Install-Package Newtonsoft.Json 成功添加了这个框架。

两天前我尝试安装 MSVC 提供的更新,但安装失败,导致我无法再次打开我的项目。重新安装 MSVC 没有帮助,所以我最终将 Windows 恢复到以前的状态。我能够再次打开我的项目,并且我想重新安装 NuGet 包(不知道它安装在项目内部,不是 MSVC)。安装时它给了我错误,所以我尝试从软件包控制台卸载所有内容。

长话短说:

  • Get-Package
  • 时,Nuget 包控制台显示“未安装任何包”
  • 再次运行 Install-Package Newtonsoft.Json 给我错误

    Newtonsoft.Json 5.0.6 could not be installed. You try to install this package in a project referencing "WindowsPhone,Version=v8.0", the package however does not contain assemblies compatible with this framework

  • “管理 NuGet”包对话框在“已安装”下显示没有包,但是在在线包中,列出了 json 包并标记为已安装(所以我无法尝试安装它)

现在我完全迷路了。我不知道如何正确安装软件包,也不知道如何正确删除它。我的项目文件损坏了吗?我该如何修复它?


[编辑]现在它变得更加困惑。我刚刚更新了 NuGet 包管理器(虽然不是 MSVC),并尝试重新安装 Json.NET。

  • 在对话框中,它仍然没有显示在“已安装”下
  • 在在线软件包列表中,它不再被标记为已安装,但点击“安装”没有任何作用
  • 控制台中的
  • Get-Package 显示已安装的包

    PM> Get-Package

    Id Version Description/Release Notes
    -- ------- -------------------------
    Newtonsoft.Json 5.0.6 Json.NET is a popular high-performance JSON framework for .NET
  • 尝试使用“Uninstall-Package Newtonsoft.Json”进行卸载时出现“无法找到软件包‘Newtonsoft.Json’”

  • 在我的项目文件夹中,我可以在 packages 目录中看到一个“Newtonsoft.Json.5.0.6”子文件夹

我应该从头开始并创建一个新项目吗? :/


packages.dgml 的内容:

<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph GraphDirection="LeftToRight" xmlns="http://schemas.microsoft.com/vs/2009/dgml">
<Nodes />
<Links />
<Categories>
<Category Id="Projekt" />
<Category Id="Paket" />
</Categories>
<Styles>
<Style TargetType="Node" GroupLabel="Projekt" ValueLabel="True">
<Condition Expression="HasCategory('Projekt')" />
<Setter Property="Background" Value="Blue" />
</Style>
</Styles>
</DirectedGraph>

最佳答案

在您的解决方案或项目中,您会发现一个名为 packages.config 的文件。打开此文件,您将看到 NuGet 已安装的所有包。

文件看起来像这样:

<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Json" version="2.0.3" targetFramework="net45" />
</packages>

只需删除包的行并保存文件即可。

<?xml version="1.0" encoding="utf-8"?>
<packages>
</packages>

然后再次运行 NuGet,它应该会安装。

JSON.NET NuGet 包应该只是 work with a Windows Phone 8.0 project .在 VS2012 NuGet 管理器中添加它会引入 WP7 版本的 JSON.NET。 (packages\Newtonsoft.Json.4.5.10\lib\sl3-wp\Newtonsoft.Json.dll)

JSON.NET 现在也可以作为可移植类库使用,您可以从 WP8 使用它(以 NuGet 或源代码形式提供)。

更新:

最新版本的 NuGet 已卸载。

VS 2013:

在解决方案中,右键单击 References 和 Manage NuGet packages,您会在左上角找到“Installed Packages”。选择软件包,卸载选项将可用。

VS 2015:

在解决方案中,右键单击 References 和 Manage NuGet packages,找到右上角的“Installed”选项卡。将鼠标悬停在软件包上,“X”将显示为卸载。

VS 2017:

在解决方案上,右键单击“管理解决方案的 NuGet 包”,找到左上角的“已安装”选项卡。单击软件包,右侧面板中将出现一个“卸载”按钮。

VS 2019:

(与 2017 相同)在解决方案上,右键单击“管理解决方案的 NuGet 包”,找到左上角的“已安装”选项卡。单击软件包,右侧面板中将出现一个“卸载”按钮。

关于c# - 无法卸载/重新安装 NuGet 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18630332/

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