AUTOFAC relies on injection to help us instantiate the interface without using the traditional new
Such as:
Public class Autofaccontroller:controller { public ipeople _people; Public Autofaccontroller (ipeople people) { = people; } // GET:AUTOFAC Public actionresult Index () { = _people. Getpeople (); return View (); } }
The Global.asax is configured as follows
//Create a container instance of the AUTOFAC management registration class varBuilder =NewContainerbuilder (); //You need to register this container for the types it can manage.//The Builder register method can be used to register types in several ways, and several methods have been demonstrated in the console program before. Builder. Registertype<people> (). As<ipeople>(); //Builder. Registertype<defaultcontroller> (). Instanceperdependency (); //Use the Registercontrollers extension method provided by AUTOFAC to register all controllers in the assembly onceBuilder. Registercontrollers (assembly.getexecutingassembly ()); //generate a specific instance varcontainer =Builder. Build (); //The following is an extension that uses MVC to change the way in which MVC is injected.Dependencyresolver.setresolver (NewAutofacdependencyresolver (container));
AUTOFAC ASP. NET MVC