在Framework 4.6项目中使用.net core DLL

11

我已经在.net core 2.0中构建了一个DLL,现在想在使用.net 4.6.1框架的WinForms项目中使用它。

我可以引用该dll,但是我收到一个"System.IO.FileLoadException"错误,指出无法找到"System.Runtime, Version 4.2.0.0"。

将.net core 2.0-DLL集成到完整框架项目的标准方法是什么?

1个回答

6
根据MSDN的指南,您应该引用 .Net Standard。要引用 .Net Standard 2.0 库,您需要使用 .Net Framework 4.6.1 或更高版本创建项目,并安装 .Net Core 2.0 SDK。
您应该将 WinForms 项目的目标框架更改为 4.6.1,并安装 .Net Core SDK。

我其实不知道4.6.1和4.6之间有什么区别。我目前使用的是4.6。 - user2033412
@user2033412,如果您将框架更改为4.6.1,它是否可以工作? - Roman
@user2033412,请尝试重新安装System.Runtime NuGet包。 - Roman
@user2033412,请尝试卸载您的.NET Core项目并在XML编辑器中打开项目文件,然后找到“<TargetFrameworkVersion>”。您有什么值? - Roman
6
好的,我明白了。我将把"TragetFrameWorkVersion"从dotnetcore2.0改为dotnetstandard2.0——现在它可以正常工作了。 :-) - user2033412
更准确地说,将 <TargetFramework>netcoreapp2.1</TargetFramework> 更改为 <TargetFramework>netstandard2.0</TargetFramework> - avj

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接