Что делает WebActivator? - PullRequest
       15

Что делает WebActivator?

47 голосов
/ 28 апреля 2011

Этот код был сгенерирован для меня после того, как был добавлен первый код структуры сущностей для SQL Server CE с использованием NuGet.Они не сделали никаких изменений в любом другом файле.Файл SQLCEEntityFramework.cs был создан и помещен в папку App_Start.

Означает ли это, что он автоматически запускается или что-то в этом роде?То же самое произошло, когда я добавил Ninject для MVC 3. В файл global.ascx не было добавлено ни одного кода, поэтому я понятия не имею, подключен ли он и работает, или мне нужно что-то настраивать.

Ответы [ 2 ]

42 голосов
/ 28 апреля 2011

Согласно:

http://haacked.com/archive/2010/05/16/three-hidden-extensibility-gems-in-asp-net-4.aspx

Этот новый атрибут позволяет запускать код на ранней стадии конвейера ASP.NET при запуске приложения.Я имею в виду намного раньше, еще до Application_Start.Это также происходит до того, как код в вашей папке App_code (при условии, что у вас там есть код) был скомпилирован.Чтобы использовать этот атрибут, создайте библиотеку классов и добавьте этот атрибут в качестве атрибута уровня сборки.Обычно это можно добавить в классе AssemblyInfo.cs в папке «Свойства».

19 голосов
/ 16 марта 2013

Для пояснения, это дает вам возможность подключиться к нескольким событиям запуска приложения и закрытия приложения БЕЗ необходимости изменять какие-либо существующие файлы кода (ранее вам приходилось редактировать Globals.asax.cs).

Это в основном большая проблема при создании пакетов, так как эти события действительно полезны для начальной загрузки модулей Http, и действительно сложно написать код в существующие файлы.

...