nuget - 一次更新 nuget 包及其所有依赖项
问题描述
我刚刚使用 Angular 项目创建了一个新的 .net 核心,并且已经有一些 NuGet 包,例如“Microsoft.AspNetCore.SpaServices.Extensions”,并提供了更新。
当我尝试更新它时,出现一个错误,表明与另一个包“Microsoft.ApNetCore.Mvc.Abstractions”存在版本冲突,要解决此问题,我需要安装或引用“Microsoft.ApNetCore.Mvc.Abstractions” “ 2.2.0,当我尝试安装它时,会出现关于另一个依赖项的类似错误等等。
有没有办法让 nuget 一次更新/安装所有这些依赖项,而不是我一个一个地安装它们?
解决方案
有没有办法让 nuget 一次更新/安装所有这些依赖项,而不是我一个一个地安装它们?
通过命令行:
您可以下载nuget.exe,并将其存在的路径添加到Path系统环境变量中。然后你可以简单地nuget.exe
直接引用。之后,您可以使用包管理器控制台nuget update YourSolution.sln
中的命令来更新解决方案的依赖项。更多细节见马特在类似问题中的回答。感谢他!
在 VS IDE 中:Solution Explorer
在=>中右键单击项目名称Manage Nuget Packages
,在Updates lab 中您可以选择Select all packages
和Update
Button。
但是您可能需要知道的一点是,对于这种情况不建议您执行更新操作。
以上是回答你关于如何轻松更新或安装所有依赖项的问题。但实际上你不应该更新项目中的Microsoft.AspNetCore.SpaServices.Extensions
包。您正在开发一个针对.net core 2.1
而不是.net core 2.2
. 所以新建的时候.net core2.1 with Angular project
,模板中设计的这些nuget包,版本为2.1.X就足够了,不需要更新到.net core2.2或更高版本。
您在一个 asp .net core 2.1 项目中,它依赖于Microsoft.AspNetCore.App
2.1.X,检查它的依赖项,您可以找到如下内容:
我认为这就是它抛出version conflicts
错误消息的原因,那么在这种情况下更新包的特殊原因是什么?您可以在此处安装 .net core 2.2 SDK 。然后您可以创建以 .net core2.2 为目标的项目,并在您的项目中引用那些版本为 2.2.x 的 AspNetCore 相关包。如果我有什么误解,请随时纠正我:)
推荐阅读
- c# - C# appsettings 将对象数组绑定到类
- performance - 如何测试私有 ETH 区块链的 tps?
- java - 当我单击位于顶视图活动中的按钮并且 MainActivity 未处于活动状态时,剪贴板返回 null
- python - Python / Scrapy - 代码跳过产品,即使列出的所有产品的 xpath 都是相同的
- python - 同一日期同一变量的多个值(时间序列)
- java - 计算字符串中以大写字母开头的所有单词
- reactjs - 如何在jsx中使用if else进行媒体查询
- python - python中打印错误中的日期格式之间的天数
- html - 点击鼠标翻转卡片
- tags - terraform 覆盖子模块中的标签值