Доступна ASP.NET 5 beta 6
Как и было обещано, 27 июля числа вышла 6 бета версия ASP.NET 5. Что появилось в ней нового и есть ли критические изменения? В этом сейчас и разберемся.
Как скачать?
Для подключения новых версий библиотек достаточно поменять номер версии в project.json. Однако, в beta 6 так же входят обновления инструментов, которые можно загрузить со страницы на сайте Microsoft.
Есть ли критические изменения?
По заявлениям разработчиков ASP.NET критических изменений по сравнению с 5-ой бета версией нет.
Что нового?
Распределенный кэш
Новый пакет Microsoft.Framework.Caching.SqlServer позволит использовать SQL Server в качестве кэша для ASP.NET приложений. Этот вариант пригодиться в сценариях с использованием веб-ферм. Для его установки и настройки необходимо:
- Выполнить команду для загрузки библиотеки на рабочую станцию:
dnu commands install Microsoft.Framework.Caching.SqlConfig
Файлы будут расположены в папке *%userprofile%\.dnx\bin*.
2. Настроить параметры сервера, используя следующую команду:
```ps
sqlservercache create <строка соединения с БД> <имя схемы> <имя таблицы>
- Добавить ссылку на Microsoft.Framework.Caching.SqlServer в проект.
- Зарегистрировать кэш в контейнере DI в методе ConfigureServices():
services.AddSqlServerCache(c => { c.ConnectionString = “Server=localhost;Database=MyDb;Trusted_Connection=True;”; c.SchemaName = “dbo”; c.TableName = “AppCache”; });
5. Теперь можно использовать кэш, инжектируя интерфейс *IDistributedCache* в свои объекты.
### Поддержка сборок со строгими именами
Теперь можно создавать [сборки со строгими именами.](https://msdn.microsoft.com/ru-ru/library/wd40t7ad%28v=vs.110%29.aspx) Для этого в файле *project.json* в корень настроек необходимо добавить следующие параметры :
```plain
"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.