对于常用方法顺序是否有这样的东西?
自从我从Beta / RC版本升级到RTM版本以来,我的Web Api解决方案现在已经执行了一些新方法。 (它不是消息处理程序执行的相反顺序)
此前,APIControllers的这种方法被称为:
protected override void Initialize(System.Web.Http.Controllers.HttpControllerContext controllerContext)
{
}
在我的AuthorizationFilter的过滤方法之前
public override void OnAuthorization(System.Web.Http.Controllers.HttpActionContext actionContext)
{
}
在RTM之后,在Initialize()之前调用OnAuthorization。 是否有关于ApiController方法的执行顺序和RTM发布后的更改的一些信息?
答案 0 :(得分:37)
假设请求进入ApiController范围,操作顺序如下:
ExecuteAsync
的{{1}}方法。ApiController
的{{1}}方法。Initialize
方法。如果只匹配一个操作方法,则管道继续。ApiController
已设置。SelectAction
方法来调用所选的操作方法。之间还会发生一些事情,但这非常接近完整视图。有关详细信息,请查看ApiController
source code。