public static void Main(string[] args) { // Setup DI var builder = new ContainerBuilder(); AutofacInstaller.Configure(builder); var container = builder.Build(); var service = container.Resolve <ITestService>(); // Act var result = service.Get(); if (string.IsNullOrWhiteSpace(result)) { service.Set("Hello World"); result = service.Get(); } Console.WriteLine(result); }
protected void Application_Start() { AreaRegistration.RegisterAllAreas(); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); var builder = new ContainerBuilder(); AutofacInstaller.Configure(builder); // Register your MVC controllers. (MvcApplication is the name of // the class in Global.asax.) builder.RegisterControllers(typeof(MvcApplication).Assembly); // OPTIONAL: Register model binders that require DI. builder.RegisterModelBinders(typeof(MvcApplication).Assembly); builder.RegisterModelBinderProvider(); // OPTIONAL: Register web abstractions like HttpContextBase. builder.RegisterModule <AutofacWebTypesModule>(); // OPTIONAL: Enable property injection in view pages. builder.RegisterSource(new ViewRegistrationSource()); // OPTIONAL: Enable property injection into action filters. builder.RegisterFilterProvider(); // OPTIONAL: Enable action method parameter injection (RARE). //builder.InjectActionInvoker(); // Set the dependency resolver to be Autofac. var container = builder.Build(); DependencyResolver.SetResolver(new AutofacDependencyResolver(container)); }