Visual Studio新项目向导:.NET Core vs .NET标准库?

时间:2017-03-14 18:55:21

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

在Visual Studio 2017的新项目向导中,我看到了创建新的.NET 标准库以及新的.NET Core 库的选项。我了解.NET Standard是规范,而.NET Core是该规范的跨平台实现

但有人可以解释从以下每种方式创建库时的真正差异吗?更糟糕的是,如果仔细观察,两个对话框的顶部都有一个下拉列表,表示" .NET Framework 4.6.2" :( - 那是什么?

.NET标准库

Standard

.NET核心库

Core

旁注:命名惯例令人困惑。 " .NET 5"听起来更简单

2 个答案:

答案 0 :(得分:3)

当您想要创建.NET Core或.NET Standard项目时,上层下拉(" .NET Framework 4.6.2和#34;)不执行任何操作。

(也许相关对话:https://twitter.com/bradwilson/status/836434975985577984

答案 1 :(得分:2)

使用此图

enter image description here

如果您创建了一个.NET Core库,那么您的库只能被Blue部分中的内容使用,并且只能使用Blue部分或Red部分中的内容。如果您创建.NET标准库,您的库可以被绿色,蓝色,橙色和红色部分中的内容使用,但只能使用红色部分中的内容。

您可能希望在标准库上使用核心库的原因是,如果您知道仅定位Core,则可以从代码中调用更多函数和库。您不需要将所使用的公共API表面区域限制为所有4个部分中允许的内容。