首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用“.NETFramework,Version=v4.6.1”而不是项目目标框架进行还原

使用“.NETFramework,Version=v4.6.1”而不是项目目标框架进行还原
EN

Stack Overflow用户
提问于 2019-02-21 22:57:50
回答 4查看 23.1K关注 0票数 26

我正在尝试参考一个nuget软件包,这显然是.NetStandard2.0。我们拥有这个包的源代码,并将其写入目标.netstandard。我们确实有一个CI管道,所以当我们推送这个代码时,它会构建并释放nuget包。当我试图将生成的nuget包引用到当前的.netCore应用程序中时,我会得到以下错误:

was restored using '.NETFramework,Version=v4.6.1' instead of the project target framework '.NETCoreApp,Version=v2.1'. This package may not be fully compatible with your project.

这对我来说没有任何意义。到目前为止,我已经尝试了以下调试步骤:

  • 直接引用源代码作为对我的项目的项目引用。一切都很好。
  • 分析dotpeek中生成的nuget包,以确保它实际上是一个.netstandard包。

不知道是什么让它认为它在任何时候都是针对目标的。下面是我的.csproj配置的样子

<TargetFramework>netstandard2.0</TargetFramework>

不确定是否有任何其他配置块在这里重要,但让我知道,如果你需要更多的信息。有什么想法吗?

EN

回答 4

Stack Overflow用户

发布于 2020-03-19 22:32:17

我也遇到了这个问题。在我的示例中,当DLL被打包并放置在lib/文件夹中时,会发生导入警告。它是通过将打包的DLL放在lib/netstandard2.0文件夹中解决的。

票数 6
EN

Stack Overflow用户

发布于 2019-05-13 10:09:47

我遇到了一个类似的问题,我正在通过Azure工件发布自己的NetStandard2.0包,然后尝试在netcore应用程序中使用它。

事实证明,问题在于我将包命名为与现有NuGet包相同的包。我的Azure工件nuget提要是在Visual中正确配置的,但是当它尝试安装包时,它首先尝试默认的NuGet提要,然后选择另一个(碰巧只有NetFramework ),而不是我的。

一旦我将包重命名为唯一(我刚刚添加了自己的命名空间),并重新发布,所有这些都正常工作。

我想这可能不是每个人的问题,但这是我的问题。

票数 4
EN

Stack Overflow用户

发布于 2019-02-22 03:11:41

您必须使用与.NETCoreApp、Version=v2.0兼容的项目中的每个包。

错误消息中的"was“之前应该有一些包名。前任:

代码语言:javascript
运行
复制
Package 'Microsoft.AspNet.WebApi.Client 5.2.2' was restored
Package 'EntityFramework 6.2.0' was restored 
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54817553

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档