What does WebActivator do?
asp.net Mvcasp.net Mvc-3NinjectEf Code-Firstasp.net Mvc Problem Overview
This code was generated for me after added entity framework code-first for SQL Server CE using NuGet. They did no changes to any other file. The file SQLCEEntityFramework.cs
was created and placed in App_Start
folder.
Does this mean it automatically gets executed or something? The same thing happened when I added Ninject for MVC 3. No code was added to the global.ascx
file so I have no idea if its plug and play or I have to configure something.
[assembly: WebActivator.PreApplicationStartMethod(typeof(StackTorrents.WebUI.App_Start.SQLCEEntityFramework), "Start")]
asp.net Mvc Solutions
Solution 1 - asp.net Mvc
According to:
http://haacked.com/archive/2010/05/16/three-hidden-extensibility-gems-in-asp-net-4.aspx
> This new attribute allows you to have > code run way early in the ASP.NET > pipeline as an application starts up. > I mean way early, even before > Application_Start. This happens to > also be before code in your App_code > folder (assuming you have any code in > there) has been compiled. To use this > attribute, create a class library and > add this attribute as an assembly > level attribute. A common place to add > this would be in the AssemblyInfo.cs > class within the Properties folder.
Solution 2 - asp.net Mvc
To clarify, it gives you a way of hooking into several application start and application shutdown events WITHOUT having to change any existing code files (previously you had to edit Globals.asax.cs).
This is mostly a big deal when making packages as these events are really useful for bootstrapping Http modules and it is really difficult to write code into existing files.