+38/050/370-3627
+38/067/502-3306
+38/044/257-2444
Новости

.NET Core 3.1 - релиз долгосрочной поддержки (LTS)

.NET Core 3.1 - релиз долгосрочной поддержки (LTS)

Microsoft объявила о выпуске .NET Core 3.1. Это небольшое обновление, в основном призванное устранить проблемы версии .NET Core 3.0. Самое важное о .NET Core 3.1 — это релиз долгосрочной поддержки (LTS) и Microsoft будет поддерживать эту версию как минимум в течение 3 лет. Как и в прошлом, Microsoft не хотел торопиться с выпуском нового релиза LTS. Дополнительные два месяца (после выхода .NET Core 3.0) позволили выбрать и реализовать правильный набор улучшений по сравнению с уже стабильной версией. .NET Core 3.1 теперь полностью готов к использованию в чем угодно, на что только способно ваше воображение.

Вы можете скачать .NET Core 3.1для Windows, macOS, и Linux:

  • .NET Core 3.1 SDK и Runtime
  • Образы контейнеров Docker
  • Установщик Snap

ASP.NET Core и EF Core также стали общедоступны.

Visual Studio 2019 16.4 также теперь доступна и включает в себя .NET Core 3.1. Это необходимое обновление для использования .NET Core 3.1 с Visual Studio. Пользователям Visual Studio 2019 мы рекомендуем просто обновить Visual Studio до 16.4 вместо отдельного скачивания .NET Core 3.1.

Visual Studio для Mac также поддерживает и включает в себя .NET Core 3.1, пробуйте Visual Studio для Mac 8.4 Preview.

Заметки релиза:

  • Заметки о релизе .NET Core 3.1
  • Страница GitHub для описания проблем с .NET Core 3.1
  • Релиз на GitHub

Изменения в .NET Core 3.1 были в основном сфокусированы на Blazor и Windows Desktop, двух больших новинках .NET Core 3.0. В них входит поддержка C++/CLI, которая была частым запросом от разработчиков, ориентированных на Windows.

Прежде чем перейти к краткому обзору новинок .NET Core 3.1, советуем изучить новинки .NET Core 3.0.

Поддержка платформ

.NET Core 3.1 поддерживается на следующих ОС:

  • Alpine: 3.10+
  • Debian: 9+
  • Ubuntu: 16.04+
  • Fedora: 29+
  • RHEL: 6+
  • openSUSE: 15+
  • SUSE Enterprise Linux (SLES): 12 SP2+
  • macOS: 10.13+
  • Windows Client: 7, 8.1, 10 (1607+)
  • Windows Server: 2012 R2+

Заметка: приложения Windows Forms и WPF поддерживаются и функционируют только на Windows.

Поддержка чипов:

  • x64 на Windows, macOS, и Linux
  • x86 на Windows
  • ARM32 на Windows и Linux
  • ARM64 на Linux (kernel 4.14+)

Заметка: обратите внимание, что в развертываниях .NET Core 3.1 ARM64 используется Linux kernel версии 4.14 или более поздней. Например, Ubuntu 18.04 удовлетворяет этому требованию, а 16.04 нет.

Удаление элементов управления Windows Forms

Следующие элементы управления Windows Forms были удалены из .NET Core 3.1:

  • DataGrid
  • ToolBar
  • ContextMenu
  • Menu
  • MainMenu
  • MenuItem

Эти элементы управления были заменены более мощными элементами управления в .NET Framework 2.0 еще в 2005 году. Они не были доступны по умолчанию в Visual Studio Designer Toolbox в течение многих лет. В результате мы решили убрать эти элементы управления и сосредоточиться на новых.

Рекомендуются следующие замены:

Старый элемент (API) Рекомендуемая замена Другие связанные удаленные API
DataGrid DataGridView DataGridCell, DataGridRow, DataGridTableCollection, DataGridColumnCollection, DataGridTableStyle, DataGridColumnStyle, DataGridLineStyle, DataGridParentRowsLabel, DataGridParentRowsLabelStyle, DataGridBoolColumn, DataGridTextBox, GridColumnStylesCollection, GridTableStylesCollection, HitTestType
ToolBar ToolStrip ToolBarAppearance
ToolBarButton ToolStripButton ToolBarButtonClickEventArgs, ToolBarButtonClickEventHandler, ToolBarButtonStyle, ToolBarTextAlign
ContextMenu ContextMenuStrip  
Menu ToolStripDropDown, ToolstripDropDownMenu MenuItemCollection
MainMenu MenuStrip  
MenuItem ToolstripMenuItem  

Да, это переломное изменение. Вы заметите разрывы сборки, если будете использовать элементы управления, которые мы удалили, в своих приложениях. Кроме того, если вы откроете приложения .NET Core 3.0 в последних версиях конструктора .NET Core Windows Forms, вы увидите ошибки, если будете использовать эти элементы управления.

Мы рекомендуем вам обновить ваши приложения до .NET Core 3.1 и перейти на альтернативные элементы управления. Замена элементов управления — это простой процесс, по сути «найти и заменить».

Во-первых, мы должны были внести эти изменения до того, как выпустили .NET Core 3.0, и мы извиняемся за это. Мы стараемся избегать слишком поздних изменений и нам очень жаль, что так получилось.

Продвинувшись дальше в реализации проекта дизайнера Windows Forms, мы поняли, что эти элементы управления не связаны с созданием современных приложений и никогда не должны были быть частью .NET Core Windows Forms. Мы также поняли, что нам потребуется слишком много ресурсов для их поддержки.

Цель — продолжать совершенствовать Windows Forms для обеспечения высокого DPI, доступности и надежности, и это позднее изменение было действительно важно.

C++/CLI

Добавили поддержку создания компонентов C++/CLI (AKA «управляемый C++»), которые можно использовать с .NET Core 3.0+ в Visual Studio 2019 16.4. Для использования C++/CLI необходимо установить рабочую нагрузку «Desktop-разработка с C++» и компонент «поддержка C++/CLI».

Этот компонент добавляет пару шаблонов, которые вы можете использовать:

  • CLR библиотека классов (.NET Core)
  • CLR пустой проект (.NET Core)

Если вы не можете их найти, просто поищите в диалоговом окне «Новый проект».

C++/CLI доступны только на Windows. Вы не можете использовать компоненты C++/CLI предназначенные для .NET Framework с .NET Core и наоборот.

Рекомендуем перейти на .NET Core 3.1 как только у вас появится возможность. Это отличный релиз (в основном благодаря 3.0), который вносит улучшения во многие аспекты .NET Core. Это также релиз долгосрочной поддержки (LTS), который будет поддерживаться в течение как минимум трех лет.

Обновления жизненного цикла:

  • Поддержка .NET Core 3.0 завершится 3 марта 2020 года.
  • Поддержка .NET Core 2.2 завершится 23 декабря 2019.
  • .NET Core 2.1 будет поддерживаться до августа 2021 (это также LTS-релиз).

Следующие сообщения .NET Core рекомендуется прочитать, чтобы узнать больше о том, что вы получаете с .NET Core 3.1 и другими проектами (на английском).

Основы

  • Floating-Point Parsing and Formatting improvements in .NET Core 3.0
  • Default implementations in interfaces
  • Introducing the new Microsoft.Data.SqlClient
  • Introducing diagnostics improvements in .NET Core 3.0
  • Understanding the Whys, Whats, and Whens of ValueTask

Desktop

  • .NET Core 3 for Windows Desktop
  • Continuously deploy and monitor your UWP, WPF, and Windows Forms app with App Center
  • Introducing .NET Core Windows Forms Designer Preview 1
  • Migrating a Sample WPF App to .NET Core 3
  • Porting desktop apps to .NET Core

ASP.NET

  • Improvements in .NET Core 3.0 for troubleshooting and monitoring distributed apps
  • Blazor Server in .NET Core 3.0 scenarios and performance
  • Supporting the community with WF and WCF OSS projects
  • Upcoming SameSite Cookie Changes in ASP.NET and ASP.NET Core
  • Re-reading ASP.Net Core request bodies with EnableBuffering()
  • gRPC vs HTTP APIs
  • Collecting .NET Core Linux Container CPU Traces from a Sidecar Container

Общее

  • How the .NET Team uses Azure Pipelines to produce Docker Images
  • The Evolving Infrastructure of .NET Core
  • Update on .NET Standard adoption
  • .NET Core is the Future of .NET
  • .NET Core and systemd
  • .NET Core Workers as Windows Services

Другие новости