项目依赖NuGet包A时,隐式引用的NuGet包B版本解析问题
NuGet依赖版本选择问题解答
你的.NET7项目会拉取NuGet包B的**.NET7版本**。
原因如下:
- NuGet的依赖解析逻辑是以主项目的目标框架为核心,优先选择与主项目框架最匹配的依赖版本,而非依赖链上游包(包A)的目标框架。
- .NET7是具体的运行时框架,netstandard2.0是跨平台标准框架,.NET7本身完全兼容netstandard2.0,因此包B的.NET7版本和你的项目适配性更好,NuGet会自动选中这个版本。
- 即便包A基于netstandard2.0构建,它也能在.NET7环境下正常运行,搭配包B的.NET7版本不会出现兼容性问题,反而能更好地利用.NET7的原生特性。
内容的提问来源于stack exchange,提问作者Bogey
相关产品推荐
相关产品推荐

