SHOW:
|
|
- or go back to the newest paste.
| 1 | public class MvcApplication : System.Web.HttpApplication, IContainerProviderAccessor | |
| 2 | {
| |
| 3 | // Provider that holds the application container. | |
| 4 | static IContainerProvider _containerProvider; | |
| 5 | ||
| 6 | // Instance property that will be used by Autofac HttpModules | |
| 7 | // to resolve and inject dependencies. | |
| 8 | public IContainerProvider ContainerProvider | |
| 9 | {
| |
| 10 | get { return _containerProvider; }
| |
| 11 | } | |
| 12 | ||
| 13 | protected void Application_Start() | |
| 14 | {
| |
| 15 | var builder = new ContainerBuilder(); | |
| 16 | builder.RegisterType<Service>().As<IService>(); | |
| 17 | builder.RegisterControllers(Assembly.GetExecutingAssembly()); | |
| 18 | builder.Register(c => new Logger()).As<ILogger>(); | |
| 19 | builder.RegisterType<CustomActionFilter>().AsSelf(); | |
| 20 | builder.RegisterFilterProvider(); | |
| 21 | ||
| 22 | var container = builder.Build(); | |
| 23 | ||
| 24 | DependencyResolver.SetResolver(new AutofacDependencyResolver(container)); | |
| 25 | _containerProvider = new ContainerProvider(container); | |
| 26 | ||
| 27 | AreaRegistration.RegisterAllAreas(); | |
| 28 | ||
| 29 | WebApiConfig.Register(GlobalConfiguration.Configuration); | |
| 30 | FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); | |
| 31 | RouteConfig.RegisterRoutes(RouteTable.Routes); | |
| 32 | BundleConfig.RegisterBundles(BundleTable.Bundles); | |
| 33 | AuthConfig.RegisterAuth(); | |
| 34 | } | |
| 35 | } |