Подтвердить что ты не робот

Каков новый файл Startup.cs для проектов Visual Studio 2013?

Я только что установил Visual Studio 2013, создал проект MVC Web Application и заметил новый файл в шаблоне проекта под названием Startup.cs.

Что это такое, как это отличается от Global.asax.cs и есть ли хорошие рекомендации по использованию этого?

4b9b3361

Ответ 1

Каждое приложение OWIN имеет класс запуска, в котором вы указываете компоненты для конвейера приложения.

Если вы запустите новый проект Visual Studio, вы увидите фрагменты OWIN. OWIN - это спецификация, которая определяет API для каркаса и серверов для сотрудничества. Точка OWIN - это отключение сервера и приложения. Например, ASP.NET Identity использует OWIN-безопасность, собственный хостинг SignalR использует хостинг OWIN и т.д., Все примеры используют OWIN, поэтому все они должны иметь класс запуска, определенный в файле "Startup.cs".

Файл приложения Global.asax, приложение ASP.NET, является необязательным файлом, который содержит код для ответа  к событиям уровня приложения, поднятым ASP.NET или HttpModules.

Подробнее:

Owin

http://www.asp.net/aspnet/overview/owin-and-katana

Global.asax

http://msdn.microsoft.com/en-us/library/1xaas8a2(v=vs.71).aspx

Вы можете найти больше идей о том, почему OWIN в следующей статье:

http://www.asp.net/aspnet/overview/owin-and-katana/an-overview-of-project-katana

Ответ 2

Файл, похоже, связан с SignalR. Цитирование примечаний к выпуску VS 2013:

Построено на OWIN

SignalR 2.0 полностью встроен в OWIN (открытый веб-интерфейс для.СЕТЬ). Это изменение делает процесс настройки для SignalR намного более совместимые между веб-хостингами и самообслуживаемыми приложениями SignalR, но также потребовал ряд изменений API.

MapHubs и MapConnection теперь являются MapSignalR

Для совместимости с стандартами OWIN эти методы были переименованы к MapSignalR. MapSignalR, вызываемый без параметров, отобразит все хабы (как MapHubs делает в версии 1.x); отображать индивидуальные Объекты PersistentConnection, укажите тип подключения как тип параметр и расширение URL для подключения в качестве первого аргумент.

Метод MapSignalR вызывается в классе запуска Owin. визуальный Studio 2013 содержит новый шаблон для класса запуска Owin; использовать этот шаблон, сделайте следующее:

  • Щелкните правой кнопкой мыши проект
  • Выберите Добавить, Новый элемент...
  • Выберите класс запуска Owin. Назовите новый класс Startup.cs.

В веб-приложении класс запуска Owin, содержащий MapSignalR метод добавляется в процесс запуска Owin с использованием записи в настройки приложения node файла Web.Config, как показано ниже.

В самообслуживаемом приложении класс Startup передается как тип параметр метода WebApp.Start.

Ответ 3

Класс запуска - это соглашение, которое Katana/OWIN ищет для инициализации конвейера. Когда ваше приложение запускается, код внутри функции "Конфигурация" запускается для настройки компонентов, которые будут использоваться. В шаблонах MVC 5 он использовался для связывания промежуточного программного обеспечения аутентификации, которое все построено поверх OWIN.

Если вы хотите использовать инъекцию зависимостей с OWIN, посмотрите этот проект на GitHub: DotNetDoodle.Owin.Dependencies