.NET Core 1.1 升级公告

来源:互联网 发布:詹姆斯季后赛场均数据 编辑:程序博客网 时间:2024/06/08 09:33

 2016年11月16日发布.NET Core 1.1 。 它包括对其他Linux发行版的支持,有很多更新,是当前的第一个版本。 

将在下面描述所有这些变化。  它是“Go Live”,可用于生产工作负载。

您可以立即下载版本::

  • Windows x64

  • Windows x86

  • macOS x64

  • Linux x64

您可以在.NET Core预览下载页面上查看完整的.NET Core 1.1下载。 .NET Core 1.1  Docker中的Docker镜像也可以在microsoft / dotnet仓库中找到。 您可以在.NET Core Docker Samples存储库中查看新的Docker镜像。

您可以在dot.net/core页面上找到现有的.NET Core 1.0版本。 .NET Core 1.1在作为稳定版本发布后也将列在该页面上。

.NET Core 1.1 改进

.NET Core 1.1版本是第一个1.x次要更新。 其主要产品主题是添加对新操作系统分发的支持。

.NET Core 1.1 操作系统分发

增加了对以下分发版的支持:

  • Linux Mint 18

  • OpenSUSE 42.1

  • macOS 10.12

  • Windows Server 2016

您可以在.NET Core 1.1 发行说明中查看完整的受支持发行版。

.NET Core 1.1  APIs

此版本中添加了1380个API。 您可以在API差异.NET核心应用程序1.0(参考)VS .NET核心应用程序1.1(参考)文档中查看完整的集。 添加了API以启用特定场景。 API添加没有特定的主题。.NET Standard 2.0 要在下个发布版本中支持,目前版本仍然不支持.NET标准2.0。

.NET Core 1.1 修复

进行了许多具体的产品更改。 您可以查看完整的.NET Core 1.1提交以了解更多。 以前发布的MSBuild和CSProj更改不是此版本的一部分,但仍然有效。

.NET Core 1.1  并行安装使用.NET Core 1.0

.NET Core 1.1 与.NET Core 1.0并行安装。 .NET Core 1.0应用程序将继续使用.NET Core 1.0运行时。 .NET Core 1.0环境被设计为几乎完全不知道也安装了稍后的次要或主要版本。

只有一个命令 - dotnet new - 将随着安装.NET Core 1.1的变化而改变。 dotnet new将创建需要.NET Core 1.1 的新项目,而不是.NET Core 1.0。 因此,您可能希望避免将其安装在使用命令行工具进行基于.NET Core 1.0的开发的机器上。 如果你是在Windows上,并使用Visual Studio创建新项目,而不是dotnet new,安装.NET Core 1.1是个好主意。

dotnet new将为安装的最新.NET Core版本创建新项目。

.NET Core 1.1 试试看

您可以从安装.NET Core 1.1 开始。 之后,您可以像使用.NET Core 1.0一样使用.NET Core工具。 尝试以下命令集来创建,构建和运行.NET Core 1.1 应用程序:

dotnet newdotnet restoredotnet run
您可以查看dotnetapp-docker示例试用.NET Core 1.1预览1应用程序,无论是否使用Docker。

.NET Core 1.1 升级现有项目

您可以将现有的.NET Core项目从使用.NET Core 1.0升级到.NET Core 1.1 .我将向您展示dotnet new命令现在生成的新project.json文件。 这是查看需要复制/粘贴到现有project.json文件中的新版本值的最佳方法。 目前没有自动化工具将现有项目升级到更高版本的.NET Core。


{  "version": "1.0.0-*",  "buildOptions": {    "debugType": "portable",    "emitEntryPoint": true  },  "dependencies": {},  "frameworks": {    "netcoreapp1.1": {      "dependencies": {        "Microsoft.NETCore.App": {          "type": "platform",          "version": "1.1.0"        }      },      "imports": "dnxcore50"    }  }}


这个project.json文件与.NET Core 1.0 project.json非常相似,除了netcoreapp1.1和1.1.0目标框架和元包版本字符串。

您可以使用以下替换来帮助您更新要临时或永久移动到.NET Core 1.1的project.json文件。

  • 将netcoreapp1.0目标框架更新为netcoreapp1.1。

  • 将Microsoft.NETCore.App包版本从1.0.x(例如,1.0.0或1.0.1)更新到1.1.0。

你也可以只写1.1.0,跳过特定于构建的信息。 它的工作原理,使您能够更容易地前进与.NET Core 1.1的构建,如果你采纳那些。 当.NET Core 1.1作为稳定版本发布时,您将要将元包版本更改为1.1.0。 目标框架版本不会改变.NET Core 1.1的生命周期。


升级到.NET Core 1.1 Docker镜像

.NET Core 1.1 docker已发布到microsoft / dotnet仓库。 .NET Core 1.1的两个新标签(用于.NET Core 1.1 SDK和运行时映像)分别为:1.0.0-preview2.1-sdk,1.1.0-core。

最新的和其他无版本的标签不会被更新为指向.NET Core 1.1,但仍指向.NET Core 1.0。 注意,.NET Core研发团队仍然决定无版本标签应该总是指向LTS版本(见下面的解释),或者它们是否可以指向当前版本。

您可以使用.NET Core Docker Samples存储库中的dotnetapp-docker示例来试用新的Docker镜像。 其他样本可以很容易地修改,以锻炼.NET Core 1.1 images,按照我给你上面的project.json升级说明。


当前版本

.NET Core研发团队在7月宣布,将采用.NET Core版本的双列战略。当时,称之为两种不同的产品系列“LTS”和“FTS”。这些发布条款已更名为“长期支持(LTS)”和“当前版本”。这与其他平台类似,如Red Hat Enterprise Linux,Ubuntu和Node.js。事实上,采用“当前”,因为该术语已经在使用,并已经具有想要的意思。

.NET Core研发团队称不同的版本为“trains”,因为它很容易应用火车(长的车辆在金属轨道上)类似于软件版本。

虽然。 LTS(慢)和当前(快)列车定义不同的发布节奏,对更新中可接受的变化种类的不同期望以及不同的支持时间帧。根据在.NET Framework中的经验,只有一个列车,.NET Core研发团队希望在发布中有更多的灵活性,并能够更好地服务于不同的客户。

在经过深入,冗长的测试,重要的客户采用(被命名为LTS)和高度稳定性之前发布LTS版本。一旦发布,目标是尽可能少地更新LTS版本,仅用于安全性,可靠性,性能问题和罕见的重要功能。他们支持长达三年。更保守的客户期望零变化,虽然他们意识到这不是很现实。

当前版本是目前正在积极工作的版本。 .NET Core 1.1是这样的版本。在这些版本中执行主要功能工作,并且还支持新的操作系统分发。这些版本是稳定的,但是移动速度也快得多,因此当您采用它们时需要更多的测试。它们也仅在下一个最新版本发布后三个月才得到支持。要保留受支持的版本,您需要在三个月过去之前移动到下一个当前版本。有了Current,你得到的新功能必须更快,但必须留在那个发行火车。

支持一些新的操作系统发行版也将在LTS发行版中添加,但这将在异常基础上完成。 Windows Server 2016和macOS Sierra是发生这种情况的示例。

一旦对一系列当前版本感到满意,并且有足够的反馈,.NET Core研发团队将下一个版本标记为LTS,然后重复整个过程。这可能发生在连续几个或许多当前版本之后。

当前版本到LTS的转换是“切换火车”的好机会。预计一些开发人员将在开发较长项目期间选择当前版本,以获得最新功能和更广泛的修复集,然后在项目中稍后(假设计时正常)为其生产部署做好准备。

版本控制,文件名和Docker标签

如果你在一个有大量用户和发行版的重要项目上工作,你可能会知道产品命名和版本控制是非常困难的。 .NET Core项目不能解决这个问题。事实上,它似乎包含它,选择版本字符串,不是那么直观。

有两个.NET核心版本:一个运行时和一个包含运行时和一些工具的SDK。很容易到目前为止。主要的问题是SDK分发是最受欢迎的分发,但不与运行时共享相同的版本方案。面临的挑战是,主要从运行时版本(包括本博客文章)来讨论产品,而SDK则根据其携带的工具进行版本化。有很多原因选择这样做。这就是上下文。

.NET核心安装程序,Docker映像和project.json文件携带您需要使用的版本号和原因。选择或写正确的东西可能是挑战,因为这些字符串中的一些看起来非常相似,但意味着不同的东西。

这里是关键的版本:

  • 1.0.0-preview2-sdk - 指.NET Core 1.0 SDK,其中包括稳定的1.0 Runtime和预览1.0工具。这是.NET Core Tools的第二个预览版本。

  • 1.0.0-preview2.1-sdk - 指.NET Core 1.1 SDK,其中包括预览1.1 Runtime和预览1.0工具。它被称为preview2.1,因为它是一个点相关的工具相对于preview2,即使它带有一个新的运行时。

  • 1.1.0 - 指的是.NET Runtime的Core 1.1 。

.NET Core研发团队打算明年发布最终的1.0版本的.NET核心工具。这种情况应该会更好。它将使我们能够发送1.0.0-sdk版本,没有预览字符串。 SDK和运行时版本仍将不匹配。.NET Core研发团队正在讨论怎么做。他们希望工具能够比运行时更快的版本,但是,可能会选择不时地人为地使版本号相同,以使Runtimes和SDK更容易匹配。

原文地址:https://blogs.msdn.microsoft.com/dotnet/2016/11/16/announcing-net-core-1-1/


.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注

原创粉丝点击