【问题标题】:Inherit NuGet package from another project in the solution从解决方案中的另一个项目继承 NuGet 包
【发布时间】:2021-08-20 10:24:13
【问题描述】:

我试图在我的解决方案中创建一个集中的单个项目,它引用 NUnit (称为 NUnitHelper)。在这个项目中,我将自己的包装器添加到一些 NUnit 类和属性中。

对于我的解决方案中的其他项目,我想做的是从 NUnitHelper 项目继承 NUnit,而不是在我的解决方案中直接引用 NUnit NuGet 包。

我正在使用 VS2019。我发现过去曾经有一种方法可以做到这一点,因为包管理器对每个允许分发的 NuGet 包都有一个“管理”按钮,但这个选项对我来说是不可见的。 TIA。

【问题讨论】:

  • 您的问题现在解决了吗?如果有什么可以帮助的,请随时告诉我:)

标签: nuget visual-studio-2019 nuget-package


【解决方案1】:

您只需将项目中的PackageReference 添加到NUnitHelper

默认情况下,传递依赖项(即NUnit)可用于消费项目。

【讨论】:

    【解决方案2】:

    我发现过去有一种方法可以做到这一点,因为包管理器对每个允许分发的 NuGet 包都有一个 manage 按钮。

    您是否保存了有关此功能的屏幕截图?我检查了包管理器,也没有找到这个功能。

    首先,假设您使用的是非sdk项目,虽然看起来您为所有项目都安装了相同的NuGet包,即使您为所有项目安装了相同的NuGet包,NuGet包也会不要安装两次,三次......它只会安装一次,因为 NuGet 包管理器将帮助在您的解决方案文件夹中创建一个文件夹,称为 packages,并且您要安装的任何 NuGet 包都将下载到其中。所以,同一个 NuGet 包不会重新下载安装,只会做一些必要的配置,除非你下载了同一个 NuGet 包的不同版本

    有一个管理器来控制这个 => 解决方案 NuGet 包管理器(工具 > NuGet 包管理器 > 管理解决方案的 NuGet 包...)。

    如果您使用的是 new-sdk 项目,这应该不是问题,因为如果您在一个项目中安装了一个 NuGet 包,然后在另一个项目中,您只需向该项目添加引用/依赖项即可使用该项目安装的 NuGet 包。

    【讨论】:

      猜你喜欢
      • 2013-03-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-07
      • 1970-01-01
      • 2018-01-07
      • 1970-01-01
      相关资源
      最近更新 更多