Доступна .NET 6 Preview 2

.NET logoСтала доступна вторая предварительная версия .NET 6, включая такие её неотъемлемые части как ASP.NET и Entity Framework Core. Кратко рассмотрим основные изменения.

Где скачать?

Для разработки приложений с использованием .NET 6 Preview 2 рекомендуется использовать Visual Studio 2019 версии 16.9 и Visual Studio for Mac версии 8.9.

.NET 6 Preview 2

Список поддерживаемых ОС.

Оптимизация

Одной из ключевых целей при создании .NET 6 является производительность: увеличение скорости работы, уменьшение объема используемой памяти и времени запуска приложения. Кроме того, оптимизируется работа инструментария .NET (такого как dotnet). Например, скорость сборки проекта c использованием инструментария .NET 5 и .NET 6 Preview 2 может различаться от 1.5 до 2 раз и более.

.NET Multi-platform App UI (MAUI)

.NET Multi-platform App UI или, сокращенно, MAUI продолжает свое развитие. Цель – позволить разработчикам использовать общий код в приложениях под Windows, Android, iOS и macOS.

В .NET 6 Preview 2 здесь также не обошлось без улучшений производительности. Кроме того, появился новый тип проекта, который может быть запущен под Android, iOS и macOS. А скоро к этому список присоединится Windows.

Еще одна интересная возможность MAUI проектов – общие ресурсы. Ими могут быть иконки, шрифты и изображения которые будут использоваться в разных проектах. Теперь их можно хранить в одном общем месте и ссылаться на него из проектов. Для этого в csproj-файлах появились новые теги – SharedImage и SharedFont. Они поддерживают как указание отдельных файлов, так использование маски "*".

Библиотеки .NET

В .NET 6 появился новый класс PriorityQueue<TElement, TPriority> реализующий очередь с приоритетом. Это аналог Queue<T>, но только первыми будут возвращены значения, у которых указан максимальный приоритет. При этом время добавления роли не играет, а значения с одинаковым приоритетом могут быть возращены в любом порядке.

А в System.Text.Json добавилась возможность игнорировать циклические ссылки при сериализации. При этом вместо ссылки на родительский объект будет вставлено значение null.

ASP.NET 6 Preview 2

Razor

Компиляция шаблонов Razor стала быстрее за счет использования генераторов исходного кода (source generators).

Также теперь можно выделять CSS в отдельные файлы с расширением ".cshtml.css". Имя такого файла должно совпадать с именем файла страницы. Теперь достатоно в HTML коде подключить файл MyWebApp.styles.cs для загрузки CSS. При этом для каждой странице будут скачены только её стили.

SignalR

Библиотека SignalR теперь использует ссылочные типы, допускающие значение null (Nullable Reference Types).

Entity Framework Core 6.0 Preview 2

В Entity Framework Core 6.0 Preview 2 можно отметить следующие изменения:

  • String.Concat(…) с множественными аргументами получил трансляцию в SQL.
  • Улучшена интеграция с пакетом System.Linq.Async (до этого были проблемы из-за пересечения пространства имен).
  • Текстовый поиск стал более гибким. Методы EF.Functions.FreeText(…) и EF.Functions.Contains(…) теперь могут работать с двоичными колонками и колонками, которые используют конверторы значений.

Ссылки

Полные описания нововведений доступны по следующим ссылкам:

Кроме того, следующую дополнительную информацию можно найти на GitHub:

Добавить комментарий