解决.NET Core和.NET Framework之间的项目依赖关系问题

时间:2019-06-22 16:08:39

标签: .net visual-studio .net-core

我有.NET Core控制台应用程序,该应用程序在同一解决方案中引用了数据层项目,但遇到了我无法解决的错误。

Job是.NET Core 2.0。

Project是.NET Framework 4.8。

Error

1 个答案:

答案 0 :(得分:3)

您需要将数据库目标是.NET Standard 2.0而不是.NET Framework 4.8。

.NET Core和.NET Framework是不同的框架

您不能从.NET Core引用.NET Framework库,如Microsoft的此图所示:

enter image description here

为解决此问题,Microsoft为类库引入了.NET Standard:

enter image description here

.NET Core 2.0和更高版本以及.NET Framework 4.6.1(但最好是更高版本)都可以引用面向.NET Standard 2.0和更低版本的库,请参见.NET Standard文档上的implementation support

您需要将库重新定位为.NET Standard 2.0。如果您的库需要的.NET Standard中缺少任何API,它们可能会以NuGet包的形式提供-您可以在apisof.net上查找它们。

请注意,如果您在数据库中使用LINQ to SQL,那么您会很不走运,因为它仅是完整的.NET,并且不适用于.NET Standard或.NET Core项目。

以上图表均来自Introducing .NET Standard