Вышли .NET Core 2.1, ASP.NET Core 2.1 и EF Core 2.1

Стали доступны для загрузки финальные версии .NET Core 2.1, ASP.NET Core 2.1 и Entity Framework Core 2.1.

Где скачать

Обратите внимание, что SDK уже включает в себя run-time. A для разработки в Visual Studio 2017 потребуется установленный пакет обновлений 15.7.

.NET Core 2.1

Поддерживаемые операционные системы

  • Windows Client: 7, 8.1, 10 (1607+)
  • Windows Server: 2008 R2 SP1+
  • macOS: 10.12+
  • RHEL: 6+
  • Fedora: 26+
  • Ubuntu: 14.04+
  • Debian: 8+
  • SLES: 12+
  • openSUSE: 42.3+
  • Alpine: 3.7+

Из изменений. появившихся в новой версии .NET Core можно отметить:

  • Увеличенную скорость сборки проекта. Разработчики обещают, что прирост на больших проектах может быть вплоть до 10-кратного (по сравнению с .NET Core 2.0).
  • Увеличенную скорость работы в run-time. Подробности можно найти в блоге разработчиков.
  • Улучшенная производительность классов, связанных с обработкой сетевых запросов.
  • Типы Span, Memory
  • Поддержку алгоритма сжатия Brotli (тип BrotliStream)
  • Изменения коснулись так же криптографического API
  • Появился Windows Compatibility Pack – это библиотека (доступна на NuGet), которая упрощает портирование .NET кода на .NET Core. Она предоставляет доступ к API которые отсутствуют в самом .NET Core.

ASP.NET Core 2.1

Вот что появилось в ASP.NET Core 2.1

  • SignalR – уже хорошо известная в .NET библиотека для обмена сообщениями межу веб-сервером и клиентами в реальном времени.
  • Библиотеки классов Razor – возможность создавать библиотеки, которые содержат Razor страницы.
  • Поддержка Identity UI – позволяет добавлять страница авторизации в приложения (использует библиотеку Razor).
  • HTTPS теперь включен по умолчанию.
  • Добавлена возможность написания функциональных тестов для MVC, которые будут выполняться в памяти
  • Поддержка Generic Host позволяет создавать не только web-приложения, но и другие типы проектов.
  • Атрибут [ApiController] и класс ActionResult позволят создавать более понятные API
  • IHttpClientFactory – это фабрика, предоставляющая HttpClient как сервис.
  • В Kestrel заменили libuv на управляемые сокеты.
  • Шаблоны проектов изменены согласно требованиям GDPR.
  • Улучшены SPA шаблоны для Angular, React и React + Redux.

Entity Framework Core 2.1

Новые возможности Entity Framework Core 2.1

  • Поддержка GroupBy в LINQ
  • Поддержка System.Transactions
  • Конструкторы сущностей теперь могут иметь параметры.
  • Поддержка приведения значений. Если раньше сущности могли содержать только типы, которые имени аналоги в базе данных, то теперь возможно приведение некоторых типов к известным. Например: значения enum могут быть записаны и загружены из поля типа “строка”. При этом значение перечисления будет преобразовано в строку, а при загрузке – наоборот.
  • Возможность задать начальные данные для таблиц
  • Стали доступны новые типы запросов без первичного ключа (primary key). Например для загрузки данных из представлений (view).
  • Атрибут [ Owned] для указания вложенных типов (будут добавлены в содержащую их модель).
  • Улучшена оптимизация подзапросов.
  • Отложенная загрузка (Lazy Loading), которая была доступна в обычном Entity Framework.