.NET 5 — это следующий основной выпуск .NET Core после выпуска 3.1. Мы назвали этот новый выпуск .NET 5, а не .NET Core 4, по двум причинам:
Мы пропустили номера версий 4. x, чтобы избежать путаницы с .NET Framework 4.x.
Мы удалили "Core" из имени, чтобы подчеркнуть, что с настоящего момента это основная реализация .NET. .NET 5 поддерживает больше типов приложений и больше платформ, чем .NET Core или .NET Framework.
ASP.NET Core 5.0 основана на .NET 5, но у нее сохраняется имя "Core", чтобы избежать путаницы с ASP.NET MVC 5. Аналогичным образом у Entity Framework Core 5.0 сохраняется имя "Core", чтобы избежать путаницы с Entity Framework 5 и 6.
В .NET 5 включены следующие улучшения и новые функции по сравнению с .NET Core 3.1:
.NET 5 и более поздних версий — это основная реализация .NET, но платформа .NET Framework 4.x по-прежнему поддерживается. Переносить приведенные ниже технологии с .NET Framework на .NET 5 не планируется, но в .NET существуют альтернативные решения.
Исходная реализация Windows Communication Foundation (WCF) поддерживалась только в Windows. Однако есть клиентский порт, доступный из .NET Foundation. Это полностью открытый код, кроссплатформенный и поддерживаемый корпорацией Майкрософт. Ниже перечислены основные пакеты NuGet.
Серверные компоненты, дополняющие перечисленные выше упоминание клиентские библиотеки, доступны через CoreWCF. По состоянию на апрель 2022 года CoreWCF официально поддерживается корпорацией Майкрософт. Однако для альтернативы WCF рассмотрим gRPC.
.NET 5 не заменяет .NET Standard
Разработка новых приложений может указать net5.0 Moniker Target Framework (TFM) для всех типов проектов, включая библиотеки классов. Упрощено совместное использование кода между рабочими нагрузками .NET 5: все, что вам нужно, — net5.0 это TFM.
Для приложений и библиотек net5.0 .NET 5 TFM объединяет и заменяет netcoreapp и netstandard TFM. Однако если планируется совместное использование кода рабочими нагрузками .NET Framework, .NET Core и .NET 5, это можно сделать, указав netstandard2.0 в качестве TFM. Дополнительные сведения см. в статье .NET Standard.
Обновления C#
Разработчики, создающие приложения .NET 5, получат доступ к последним версиям и функциям C#. .NET 5 связан с языком C# 9, в котором предоставлено множество новых функций. Вот некоторые из них.
Записи: ссылочные типы с семантикой равенства на основе значений и неразрушительной мутацией, поддерживаемой новым with выражением.
Сопоставление реляционных шаблонов: расширяет возможности сопоставления шаблонов реляционным операторам для сравнения вычислений и выражений, включая логические шаблоны — новые ключевое слово and, orи not.
Операторы верхнего уровня: как средство ускорения внедрения и обучения C#, Main метод можно опустить, а приложение так же просто, как показано в следующем примере:
C#
System.Console.Write("Hello world!");
Указатели функций: языковые конструкции, предоставляющие следующие коды опкодовldftn промежуточного языка (IL): и calli.
Генераторы исходного кода, как и другие новые функции C#, становятся частью процесса разработки проектов. Генераторы исходного кода позволяют коду, который выполняется во время компиляции, проверять программу и создавать дополнительные файлы, компилируемые вместе с остальной частью кода.
F# — это язык функционального программирования .NET, и с помощью .NET 5 разработчики имеют доступ к F# 5. Одна из новых функций — интерполированные строки, аналогичные интерполированным строкам в C#, и даже JavaScript.
F#
let name = "David"let age = 36let message = $"{name} is {age} years old."
Помимо обычной интерполяции строк, существует типизированная интерполяция. При использовании типизированной интерполяции заданный тип должен соответствовать спецификатору формата.
F#
let name = "David"let age = 36let message = $"%s{name} is %d{age} years old."
Этот формат аналогичен sprintf функции, которая форматирует строку на основе типобезопасных входных данных.
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.
Отзыв о .NET
.NET — это проект с открытым исходным кодом. Выберите ссылку, чтобы оставить отзыв:
.NET — это кроссплатформенная среда с открытым исходным кодом для создания приложений различных типов. С .NET можно использовать различные языки, редакторы и библиотеки для написания мобильных, классических и веб-приложений, игр и приложений для Интернета вещей.