如何为不同的构建配置指定不同的nuget包版本?

2024-01-10

我想为不同的项目配置指定不同的包版本。我知道这在我的 .csproj 文件中对于非 NuGet 依赖项(“裸”DLL)会是什么样子,但我也想尝试让它与 NuGet 包一起使用。

问题是 NuGet 依赖项是在 packages.config 中指定的,而不是在 .csproj 文件中指定的,我可以在其中使用 MSBuildCondition属性。由于似乎没有任何关于 packages.config 及其支持的属性的文档,这一事实使情况变得更加复杂。

这可以做到吗?如何?


In 2019封装参考是使用 PackageReference 节点直接在项目文件中管理 NuGet 依赖项(而不是单独的 packages.config 文件)你能行的。

<ItemGroup>
<!-- ... -->
<PackageReference Include="Newtonsoft.Json" Version="9.0.1" Condition="'$(TargetFramework)' == 'net452'" />
<!-- ... -->
</ItemGroup>

欲了解更多信息,你可以检查这个link https://learn.microsoft.com/en-us/nuget/consume-packages/package-references-in-project-files#adding-a-packagereference-condition.

Visual Studio 2017 版本 15.7 及更高版本支持将项目从packages.config管理格式迁移到PackageReference格式 https://learn.microsoft.com/en-us/nuget/reference/migrate-packages-config-to-package-reference.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何为不同的构建配置指定不同的nuget包版本? 的相关文章

  • Nuget Push 总是返回 404(未找到)

    我尝试将 nuget 包发布到我的 GitHub Packages 帐户 但在所有情况下我都会遇到 404 错误 我已按照 GitHub 网站上的要求进行操作 nuget source Add Name GitHub Source http
  • 使用 .NET Core 时是否需要 AssemblyInfo?

    之前 AssemblyInfo cs文件是由 Visual Studio 自动创建的 用于包含程序集范围的属性 如 AssemblyVersion AssemblyName 等 在 NET Core 和 ASP NET Core 中 pro
  • NuGet 文件标记中的可选或条件文件夹?

    我想做 MsBuild 所做的事情 设置 nuspec 文件中引用的文件的条件 基本上它看起来像这样
  • 无法确定要使用哪个版本的 ASP.NET 网页

    我的 VS2013 项目发生了奇怪的事情 我最近将我的项目分支之一从 NET 4 0 升级到 4 5 1 并使用 NuGet 包管理器安装带有 Razor 的 MVC 5 这样我就可以拥有 WebForms MVC 混合体 到目前为止 它运
  • C# 项目,编译器抱怨缺少对 log4net 的引用

    我正在使用 Visual Studio 2017 构建一个大型 C 项目 解决方案中有 200 多个项目 在编译其中一个项目时 我遇到了很多错误 如下所示 error CS0012 The type BufferingAppenderSke
  • NuGet 崩溃 VS2010 Ultimate

    NuGet 包管理器使我的 VS2010 Ultimate 崩溃 有谁之前经历过这个吗 我卸载了扩展并重新安装 当我打开包管理器时 会弹出以下对话框 Microsoft Visual Studio 遇到问题 需要关闭 我正在运行 NuGet
  • 无法将 bootstrap 4(测试版)nuget 包安装到 .Net MVC(.Net 版本 4.6.2)

    我无法将 bootstrap 4 测试版 安装到我的 MVC 项目中 准确地说 popper js nuget 依赖项无法安装 请让我知道任何可能的方法 bower install 仍然是一种方法 但我想使用 nuget 无法安装包 pop
  • Visual Studio 链接文件目录结构

    我有一个项目的两个版本 一种用于 Silverlight 另一种用于 NET SL 项目拥有绝大多数代码库 我想将 SL 项目中的所有文件作为链接文件全局添加到 NET 版本中 我已经在 NET 版本的 csproj 文件中成功地做到了这一
  • 更改 NuGet 包位置文件夹

    我想改变NuGet包文件夹 但它不会改变它 我所做的是创建文件nuget config
  • 无法为 Android 源代码创建 Xamarin 组件

    我已经使用了命令 xamarin component exe package C cmp AndroidComponent component 用于创建 Xamarin 组件 在构建示例 android 项目时 它显示以下错误 我已使用命令
  • 将某些软件包的 nuget 软件包更新限制为当前版本

    有没有办法禁用项目中安装的特定 nuget 包的更新 我已经对几个 javascript 库包进行了一些本地修改 并且不想冒将来有人更新我的更改的风险 我从未创建过自己的 nuget 包 我猜一种选择可能是分叉现有的包 你可以尝试约束包 h
  • 在 NuGet 包中添加解决方案级项目

    我想通过 NuGet 包将解决方案文件夹和解决方案项 不是项目 添加到解决方案文件中 我想这将通过 Powershell 来完成 我浏览了 NuGet Powershell 和 EnvDTE 的文档 但无法弄清楚 我会使用哪些命令 方法 我
  • ASP.NET Core 3:如何在自定义库中引用 3.0.0 程序集?

    我看到引用的应用程序Microsoft AspNetCore App框架 又称为 ASP NET Core 3 0 使用程序集中的类型Microsoft AspNetCore Mvc Abstractions Version 3 0 0 0
  • 从TFS迁移到GIT,共享项目到nuget

    我所在的软件团队由 4 5 名开发人员组成 他们从事一个 TFS 项目 我们正在考虑将整个代码库移至 GIT 该代码库由约 50 个 Visual Studio 2013 解决方案组成 分为约 300 个项目 引用项目中另一个程序集的首选过
  • 文件嵌套时嵌入资源名称丢失扩展名

    我有一些脚本存储在我标记为嵌入式资源的文件中 我将每个文件嵌套在其关联的下面 cs文件 不幸的是 由于某种原因 当您以这种方式嵌套文件时 嵌入的资源名称会丢失文件扩展名 这意味着在运行时我无法识别哪些嵌入式资源是脚本 哪些不是脚本 对此我能
  • Nuget:指定依赖项而不添加引用

    我有一个包 例如 MyStuff Data 需要 EntityFramework 和其他 才能工作 但仅限于内部 我不希望每个使用 MyStuff Data 的项目也引用 EntityFramework 以及所有其他项目 但 dll 始终需
  • 为什么依赖库中的本机 dll 不包含在构建输出中?

    我们使用 IBM 的 DB2 库从 C 访问 DB2https www nuget org packages IBM Data DB2 Core https www nuget org packages IBM Data DB2 Core
  • 通过本地项目引用导入 NuGet 引用

    假设我有一个 主 C 项目 它使用 NuGet 来管理其第三方依赖项 现在假设我在主项目旁边创建一个单元测试项目 其中包含主项目作为参考 不幸的是 我似乎需要重新添加通过主项目中的 nuget 包含的依赖项 以便使用它们为单元测试项目中的单
  • 如何从 Visual Studio Community for Mac 安装本地 NuGet 包 (.nupkg)?

    我已经使用 nugget CLI 创建了一个包 但找不到从 IDE 安装它的方法 Mac 版本中不提供包管理器控制台 并且 nuget CLI 尝试从 Internet 检索包读取 nupkg 文件 我有 VS Community for
  • ASP.NET Core 1.0 中的 Nuget 配置

    在我们现有的解决方案中 我们有一个包含以下内容的 NuGet Config 文件

随机推荐

  • 无法使用 Egit 和 Bitbucket 进行推送

    我一直在尝试使用 EGit 和 Bitbucket 启动一个项目 但无法将项目推送到服务器中的存储库 这些是我遵循的步骤 我会尝试非常具体 以便其他人可以将其用作教程模式 即使它对我不起作用 但可能对其他人有用 1 我在 Ubuntu 12
  • 仅用 CSS 可以扩展文本区域吗?

    我有一个高度为 200 像素的文本区域 但是当我通过文本传递 200 像素时 我希望扩展文本区域 而不是使用滚动条保留 200 像素的高度 只用CSS就可以做到这一点吗 代替textarea 您可以使用div with 内容可编辑 http
  • 这个弹出窗口类的名称是什么?

    我找不到这个类的名称 popover 苹果在他们的应用程序中大量使用它 我已经寻找过popover NSAlert 自定义隐藏 可见视图等等 这叫什么 This is UIAlertController 在ios 7之前它被称为UIActi
  • winforms 应用程序中托管的 MSIE WebBrowser 控件以兼容模式运行

    我以 winforms 形式托管 MSIE 不幸的是 无论我是否给它一个在独立 IE 中以 IE8 模式运行的页面 它都坚持以兼容模式运行 其结果是 一些在独立 MSIE 中正确呈现的内容在托管控件中完全错位和混乱 除了文档类型等之外 是否
  • 通过 URL cakePHP 传递多个、单个或无参数

    所以我有以下控制器函数来添加事件 public function add id null year null month null day null service id null project id null 在某些情况下 我需要做的是
  • pyenv-virtualenv:pyenv 中未安装“3.6.4”

    这让我很困惑 我不知道这意味着什么 我的计算机 MacOS 上安装了 3 6 4 但它不想工作 我想不出任何解决办法 也不知道该怎么办 无论你是在 Mac 还是 Linux 上 答案都略有不同 我不习惯在 Windows 上运行 Pytho
  • linux 区域设置未设置

    我有一台基于 ARM 的机器 上面装有 ubuntu 发行版 它经常在运行各种命令时向我提供以下信息 Please check that your locale settings LANGUAGE unset LC ALL unset LA
  • C#计算阶乘

    我有这段代码 它从用户那里获取输入并计算其阶乘和小于输入数字的阶乘 但我一直只获取第一个数字的阶乘 其余为 0 它应该是这样的 例如 如果输入为 5 5 120 4 24 3 6 2 4 1 1 如何让循环遍历输入数字下面的所有数字 usi
  • PrimeNg 数据表不刷新

    使用 Angular v2 4 8 和 PrimeNg v1 1 4 我有一个包含两个组件的页面 Dropzone 用于上传文件 p datatable 显示上传的文件 我将 Dropzone 配置为一次发送 5 个文件 当完成 5 个文件
  • 为什么我的 mysql DISTINCT 不起作用?

    为什么下面的两个查询返回重复的 member id 而不是第三个 我需要第二个查询来处理不同的 每当我运行GROUP BY 这个查询非常慢 并且结果集没有返回与 unique 相同的值 该值是错误的 SELECT member id id
  • 子进程可以在其父进程不死亡的情况下进入吗?

    Kill 它会立即终止进程吗 https stackoverflow com questions 8468866 kill does it kill the process right away 我找到了答案 并设置了一个信号处理程序SIG
  • 尝试打印我的矩阵而不是堆地址

    代码似乎可以运行 除了我得到的不是指定 由用户 大小的矩阵 而是我认为是堆地址 以下是当用户输入 2 作为尺寸 然后输入 4 个数字时返回的结果 输入矩阵大小 2 逐行输入 2 x 2 矩阵 2 3 4 5 行排序矩阵是 D 3c95454
  • jQuery 颜色选择器 z 轴问题

    我正在用这个选色器 http www eyecon ro colorpicker about 这真是太棒了 但是 我想在 jQuery 对话框中使用它 在表单内的输入标记上 但问题是当颜色选择器出现时 它部分位于对话框后面 在 z 轴上 因
  • GCP Cloud Run:禁用默认 URL 并仅使用自定义域?

    是否可以像这样禁用默认 URLhttps my app 332mpca uc a run app并且仅使用域映射中定义的自定义域 您无法使用自定义域来实现这一点 您可以通过在 Cloud Run 前面添加负载均衡器来实现类似的目标 这要归功
  • Node.js SFTP 客户端 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我想通过 node js 应用程序访问 sftp 服务器 你知道有这个图书馆吗 或者你知道我如何实现这
  • Python 智能日期解析(不指定年份)

    如何解析没有年份的日期 使用 dateutil 以便当当前日期为 17 11 2012 时 这些日期将被解析如下 print parser parse 23 nov dayfirst True yearfirst False fuzzy T
  • 列表的列表的列表

    表示类型的好方法是什么LoL a 是列表的列表 的 的a 嵌套级别是任意的 但总体上是统一的 外部列表的元素 我想到的情况是对 a 的成员进行分组 列表 然后对每个子组应用下一个分组 依此类推 它 事先并不知道需要应用多少个分组 因此 rG
  • Quill 工具栏未渲染(图标路径显示而不是渲染)

    我正在尝试在 React 中运行本机 Quill 我遵循 quill 的快速入门 但不幸的是工具栏渲染存在问题 见下文 显示图标路径而不是渲染图标路径 请给我同样的指示 套筒组件 import Quill from quill core i
  • AttributeError:“Response”对象没有属性“body_as_unicode”scrapy for python

    我正在 scrapy 中处理响应并继续收到此消息 我只给出了发生错误的片段 我正在尝试浏览不同的网页 并且需要获取该特定网页中的页面数 所以我创建了一个响应对象 我在其中获取下一个按钮的 href 但继续获取AttributeError R
  • 如何为不同的构建配置指定不同的nuget包版本?

    我想为不同的项目配置指定不同的包版本 我知道这在我的 csproj 文件中对于非 NuGet 依赖项 裸 DLL 会是什么样子 但我也想尝试让它与 NuGet 包一起使用 问题是 NuGet 依赖项是在 packages config 中指