मैं मैं एक छोटे से मदद mvc5 और वेब एपीआई में इस के साथ संघर्ष कर उन 2.
पहले nuget संकुल
- जोड़ने Autofac
- Autofac asp.net MVC के 5 एकीकरण
जोड़ा जाने लगा कि
- ऑटोफैक एएसपीनेट वेब एपीआई 2।Application_Start में एक्स एकीकरण
वैश्विक ऐड में (या app_start वर्ग के रूप में) के नीचे वर्ग के लिए कॉल जोड़ने
AutofacConfig.RegisterAutoFac();
अब प्रत्येक नए के लिए अब से App_start
using System.Reflection;
using System.Web.Http;
using System.Web.Http.Controllers;
using System.Web.Mvc;
using Autofac;
using Autofac.Integration.Mvc;
using Autofac.Integration.WebApi;
namespace Example1.Web
{
public class AutofacConfig
{
public static IContainer RegisterAutoFac()
{
var builder = new ContainerBuilder();
AddMvcRegistrations(builder);
AddRegisterations(builder);
var container = builder.Build();
DependencyResolver.SetResolver(new AutofacDependencyResolver(container));
GlobalConfiguration.Configuration.DependencyResolver = new AutofacWebApiDependencyResolver(container);
return container;
}
private static void AddMvcRegistrations(ContainerBuilder builder)
{
//mvc
builder.RegisterControllers(Assembly.GetExecutingAssembly());
builder.RegisterAssemblyModules(Assembly.GetExecutingAssembly());
builder.RegisterModelBinders(Assembly.GetExecutingAssembly());
builder.RegisterModelBinderProvider();
//web api
builder.RegisterAssemblyTypes(Assembly.GetExecutingAssembly()).PropertiesAutowired();
builder.RegisterModule<AutofacWebTypesModule>();
}
private static void AddRegisterations(ContainerBuilder builder)
{
//builder.RegisterModule(new MyCustomerWebAutoFacModule());
}
}
}
के तहत इस वर्ग को जोड़ने प्रोजेक्ट में जो असेंबली आप जोड़ते हैं, वह एक नया मॉड्यूल जोड़ता है और फिर मॉड्यूल को AddRegisterations फ़ंक्शन में दर्ज करता है (उदाहरण दिया गया)
नोट:
मैंने कंटेनर वापस कर दिया, यह आवश्यक नहीं है।
यह मॉड्यूल के लिए वर्तमान असेंबली स्कैन करता है इसलिए अतिरिक्त पंजीकरण में स्थानीय मॉड्यूल नहीं जोड़ें अन्यथा आप सबकुछ दो बार पंजीकृत करेंगे।
स्रोत
2014-06-10 12:45:48
मेरे यहां न्यूनतम कार्यान्वयन है: http://byterot.blogspot.co.uk/2012/04/aspnet-web-api-series-part-4-dependency.html – Aliostad