In your Package Manager Console:
Install-Package Autofac.WebApi2 -Version 4.0.1
In your Startup.cs file (assuming you're using the Visual Studio Project templates):
Startup.cs:
public static void ConfigureApp(IAppBuilder appBuilder)
{
// Configure Web API for self-host.
HttpConfiguration config = new HttpConfiguration();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
var containerBuilder = new ContainerBuilder();
containerBuilder.RegisterModule<MyApiModule>();
config.DependencyResolver = new AutofacWebApiDependencyResolver(containerBuilder.Build());
appBuilder.UseWebApi(config);
}
And, assuming you've built an Autofac Module, it should look something vaguely like this:
public class PlayDatesApiModule : Autofac.Module
{
protected override void Load(ContainerBuilder builder)
{
base.Load(builder);
builder.RegisterType<MyDependencyConcreteType>().As<IMyDependency>();
builder.RegisterType<ValuesController>();
}
}
No comments:
Post a Comment