[Перевод] Вышел .NET Core 3.1
Мы рады объявить о выпуске .NET Core 3.1. Это действительно небольшое обновление, в основном призванное устранить проблемы версии .NET Core 3.0, которую мы выкатили пару месяцев назад. Самое важное о .NET Core 3.1 — это релиз долгосрочной поддержки (LTS) и мы будем поддерживать эту версию как минимум в течение 3 лет. Как и в прошлом, мы не хотели торопиться с выпуском нового релиза LTS. Дополнительные два месяца (после выхода .NET Core 3.0) позволили нам выбрать и реализовать правильный набор улучшений по сравнению с уже стабильной версией. .NET Core 3.1 теперь полностью готов к использованию в чем угодно, на что только способно ваше воображение.
Вы можете скачать .NET Core 3.1для Windows, macOS, и Linux:
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 были в основном сфокусированы на 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 в течение многих лет. В результате мы решили убрать эти элементы управления и сосредоточиться на новых.
Рекомендуются следующие замены:
Да, это переломное изменение. Вы заметите разрывы сборки, если будете использовать элементы управления, которые мы удалили, в своих приложениях. Кроме того, если вы откроете приложения .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 и другими проектами, над которыми мы работаем (на английском).
Основы
Desktop
ASP.NET
Общее