有人可以解释一下我的区别
>核心工具预览x for VS 2015 – See here
> .NET Core / SDK(1.0,1.0.1,1.1) – See here
Core CLI SDK预览2,3,4,5 – See here
什么是预览,它们与主版本号码有什么关系?
核心版本本身似乎对新来者来说很奇怪
>当你下载页面:https://www.microsoft.com/net/download/core#/current/sdk
>您可以看到下载.NET Core 1.1 SDK – 安装程序为您提供了dotnet-dev-win-x64.1.0.0-preview2-1-003177.exe:
> 1.0.0 ??
>在同一页上,您可以下载* Visual Studio 2015工具(预览2)*,它为您提供DotNetCore.1.0.1-VS2015Tools.Preview2.0.3:
> 1.0.1?
在dotnet core github repository,我们可以看到有一些工具可用于各种版本:
1.0.3 released 12/13/2016
1.1 released 11/16/2016
1.1.0 Preview 1 released 10/24/2016
1.0.2 released 10/17/2016
1.0.1 released 9/13/2016
1.0.0 released 6/27/2016 RC2 released 5/16/2016 RC1 released 11/18/2015
在dotnet CLI repo(我不知道它的建立工具?),我们可以看到他们在谈论preview4,但在下载链接,一切都被标记为预览5.他们谈论下载一个.NET Core SDK安装程序:是否有SDK核心安装程序,那么另一个版本,还是命名不大,其实只是CLI?还是SDK包括CLI,然后在哪个版本?
它给你一个dotnet-win-x64.latest.exe似乎安装.NET Core 1.0.1 Preview 5 …
最后在Azure上,一个Web应用程序控制台会给你:
dotnet --version D:\home\site\wwwroot 1.0.0-preview3-004056
WAOOOW:丢了…
什么是正确的工具,在什么正确的版本启动一个新项目,并可以在Azure上正确部署?
解决方法
所以即使在1.1发布之后,还将有1.0的维护来修复错误或安全问题。在软件开发中一直是这样,看看Java。 Java 1.8发布时,还有Java 1.7的更新。
.NET Core SDK包含用于还原包,构建,部署和运行.NET Core应用程序的dotnet cli工具,它还包含.NET Core运行时,它提供了框架DLL(如.NET Framework 4.x设置),您需要运行便携式应用程序。
.NET Core运行时/ SDK独立于CLI工具,也可以通过nuget包获得。
Visual Studio 2015/2017的.NET Core Tools只是一组允许Visual Studio添加对新项目类型和构建管道的支持的工具。
VS的.NET核心工具还包含SDK /运行时。
您需要在Azure上运行的内容取决于您的需求,并且Azure App Service实例上安装了哪种运行时,因为它们通常落后于常规版本。
即如果您创建了自包含的应用程序,这些应用程序使用.NET Core运行时部署,那么您只需使用任何版本,因为每个应用程序都将具有可以并行运行的自己的运行时。
如果要运行便携式应用程序(在部署时运行不支持.NET Core框架库),则需要在Azure App Service上安装正确的运行时间(Azure博客通常在新的运行时可用时发布)。
所有其他依赖于您的开发环境。
TL; DR:
如果你
>使用Visual Studio 2015:安装Visual Studio 2015工具(预览2)*
>使用Visual Studio 2017:下载Visual Studio 2017
>不要使用Visual Studio,但是要为.NET开发/安装.NET Core SDK
>不要使用Visual Studio,而是要运行.NET Core Appl:Install .NET Core Runtime
要么
> .NET Core Runtime(1.0.x或1.1.x):只是运行时
> dotnet-cli:只需构建/部署工具
.NET Core SDK:运行时dotnet-cli
> Visual Studio的.NET核心工具:运行时dotnet-cli Visual Studio集成(和新项目模板)
cli工具和Visual Studio工具尚未完成,因此在预览中。他们应该与VS2017和新的基于MSBuild的项目结构(从xproj迁移到csproj文件)进行RTM,但这并不影响运行时/ SDK的状态。