为什么将.Net Standard和.Net Core项目混合在一个解决方案中?

Sam*_*Sam 0 .net-core

我刚刚开始研究Apress“使用Visual Studio 2017构建Web应用程序”。我正在开始设置项目。因此,我建立了一个名为SpyStore的解决方案。然后是一个名为SpyStore.DAL的.Net Core控制台应用程序。然后是一个名为SpyStore.Models的.Net标准类库项目。

我的问题是作者为什么会选择.Net标准类库而不是.Net核心类库。有区别吗?

.Net Standard和.Net Core有什么区别。突然之间,他有可能混用Standard吗?

Tre*_*iac 5

您可以将.netstandard可视化为一组API。它是由多个运行时实现的,例如netframework(例如net461,net47标记)或netcore(netcoreapp)。lib不是可执行文件,因此它与具体实现无关。

因为您可能想在.net框架项目(或.net标准的任何其他实现)中使用您的库,所以以netstandard为目标,请确保它可完全移植到上述任何一种实现中,其中netcoreapp库只能从netcoreapp中定向项目。

一个应用程序只能是netcoreapp或netcore,因为它取决于框架的实现

您可以在这里找到更多信息,以及哪个平台实现了netstandard的哪个版本:https ://docs.microsoft.com/dotnet/standard/net-standard