问题描述
注意:我已经看过六个类似的问题和答案,但对我不起作用
我正在处理旧的.Net Framework 4.6.1
项目。我需要使用在.Net Framework下不起作用的库。它可以编译,但是根本不起作用。
我想创建一个新的.Net Core项目,因为我知道.Net Core可以正常使用该库。
但是,我没有设法让.Net Framework项目使用.Net Core库。可能吗怎么做到呢?我看过其他SO问题与解答,但是没有做到。
链接.Net Standard库有效,但在这种情况下,.Net Standard中的代码仍作为.Net Framework运行,因此不起作用(因为该库已被.Net Framework破坏)。
解决方法
您遇到的是精美印刷中的第二个音符。
2此处列出的版本表示NuGet用于确定给定.NET Standard库是否适用的规则。虽然NuGet认为.NET Framework 4.6.1支持.NET Standard 1.5至2.0,但使用为.NET Framework 4.6.1项目中的那些版本构建的.NET Standard库存在一些问题。对于需要使用此类库的.NET Framework项目,建议您将项目升级到目标.NET Framework 4.7.2或更高版本。
如果.NET Core项目为3.0或更高版本,则它可能与.NET Standard 2.1兼容。 .NET Framework仅与最高2.0版的.NET Standard兼容。
最后,
- 您的.NET Core项目必须为.NET Core 2.1(较低版本为生命周期终止,可以使用,但不建议使用)
- 将.NET Framework目标升级到4.7.2