Ed *_*try 2 asp.net dependency-injection autofac owin asp.net-web-api2
使用OWIN与Autofac和WebApi2有问题.基本上构造函数没有被注入.
public class Startup
{
public void Configuration(IAppBuilder app)
{
var config = new HttpConfiguration();
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "Default Route",
routeTemplate: "{controller}.{ext}"
);
config.Routes.MapHttpRoute(
name: "Default Route with Id",
routeTemplate: "{controller}/{id}.{ext}",
defaults: new { id = RouteParameter.Optional }
);
var builder = new ContainerBuilder();
builder.RegisterApiControllers(Assembly.GetExecutingAssembly());
builder.Register(c => new Logger()).As<ILogger>().InstancePerRequest();
var container = builder.Build();
var resolver = new AutofacWebApiDependencyResolver(container);
GlobalConfiguration.Configuration.DependencyResolver = resolver;
app.UseAutofacWebApi(GlobalConfiguration.Configuration);
app.UseWebApi(config);
}
}
public class UsersController : ApiController
{
private readonly ILogger _logger;
public UsersController(ILogger logger)
{
_logger = logger;
}
}
Run Code Online (Sandbox Code Playgroud)
我正在使用Autofac.Integration.Owin nuget alpha包.我错过了什么?
Tra*_*lig 11
尝试一直使用config配置对象.在中间你切换到GlobalConfiguration.在OWIN + Web API中,您不会使用静态配置对象,只是您在配置OWIN应用程序时创建的实例.
| 归档时间: |
|
| 查看次数: |
3372 次 |
| 最近记录: |