在 ASP.NET Web api 项目中向操作过滤器属性执行属性注入的推荐位置在哪里?在 MVC 3 领域,我们可以在从 IoC 容器解析控制器时设置自己的实现ControllerActionInvoker
,并覆盖其GetFilters()
方法以注入从容器解析的组件。
在 ASP.NET Web API 项目中是否有类似的地方可以执行此操作?我有一个控制器工厂,它从容器中解析控制器,CreateController
方法如下:
public IHttpController CreateController(HttpControllerContext controllerContext, string controllerName)
{
var controller = _kernel.Resolve<IHttpController>(controllerName);
controllerContext.Controller = controller;
controllerContext.ControllerDescriptor = new HttpControllerDescriptor(_configuration, controllerName, controller.GetType());
return controllerContext.Controller;
}
我已经看了一下HttpControllerDescriptor
是否有地方可以注射,但我找不到合适的地方。任何指向正确方向的指针?