Доступна ASP.NET 5 beta 6

ASP.NET logoКак и было обещано, 27 июля числа вышла 6 бета версия ASP.NET 5. Что появилось в ней нового и есть ли критические изменения? В этом сейчас и разберемся.

Как скачать?

Для подключения новых версий библиотек достаточно поменять номер версии в project.json. Однако, в beta 6 так же входят обновления инструментов, которые можно загрузить со страницы на сайте Microsoft.

Есть ли критические изменения?

По заявлениям разработчиков ASP.NET критических изменений по сравнению с 5-ой бета версией нет.

Что нового?

Распределенный кэш

Новый пакет Microsoft.Framework.Caching.SqlServer позволит использовать SQL Server в качестве кэша для ASP.NET приложений. Этот вариант пригодиться в сценариях с использованием веб-ферм. Для его установки и настройки необходимо:

  1. Выполнить команду для загрузки библиотеки на рабочую станцию:
    dnu commands install Microsoft.Framework.Caching.SqlConfig
    
    Файлы будут расположены в папке %userprofile%\.dnx\bin.
  2. Настроить параметры сервера, используя следующую команду:
    sqlservercache create <строка соединения с БД> <имя схемы> <имя таблицы>
    
  3. Добавить ссылку на Microsoft.Framework.Caching.SqlServer в проект.
  4. Зарегистрировать кэш в контейнере DI в методе ConfigureServices():
    services.AddSqlServerCache(c => { 
        c.ConnectionString = "Server=localhost;Database=MyDb;Trusted_Connection=True;"; 
        c.SchemaName = "dbo"; 
        c.TableName = "AppCache"; 
    });
    
  5. Теперь можно использовать кэш, инжектируя интерфейс IDistributedCache в свои объекты.

Поддержка сборок со строгими именами

Теперь можно создавать сборки со строгими именами. Для этого в файле project.json в корень настроек необходимо добавить следующие параметры :

"compilationOptions": {
    "strongName": true,
    "delaySign": true,
    "keyFile": "MySecretKeyFile.snk"
}

При необходимости, можно указать создание сборки со строгим именем только для определенной конфигурации, например Release:

"configurations": {  
    "release": {  
        "compilationOptions": {  
            "strongName": true,
            "delaySign": true,
            "keyFile": "MySecretKeyFile.snk"
        }  
    }  
}

Поддержка завершающего слэша в маршруте

Эта функциональность есть в предыдущей версии, но только сейчас перенесена в ASP.NET MVC 6. Чтобы подключить ее просто укажите в ConfigureServices():

services.AddInstance(new RouteOptions() {
    AppendTrailingSlash = true,
});

Кэширование и буферизация ответов теперь доступы в WebListener

Раньше эта функциональность была доступна только для Windows и IIS. Теперь и для WebListener. Для ее активации никаких настроек не требуется. В ASP.NET 5 beta 6 она доступна и работает "из коробки".

Уменьшение числа подключаемых пакетов для WebAPI

Теперь для использования только WebAPI достаточно указать следующие зависимости:

"dependencies": { 
    "Microsoft.AspNet.Mvc.Core": "6.0.0-*", 
    "Microsoft.AspNet.Mvc.DataAnnotations": "6.0.0-*", 
    "Microsoft.AspNet.Mvc.Formatters.Json": "6.0.0-*", 
    "Microsoft.AspNet.Hosting": "1.0.0-*", 
    "Microsoft.AspNet.Server.WebListener": "1.0.0-*" 
}

Разработчики убрали необходимость подключения (прямого или косвенного) неиспользуемых в этом случае библиотек, таких как Razor или TagHelpers.

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