33

我看到有两个版本的 ActionFilterAttribute 类。
System.Web.Mvc.ActionFilterAttributeSystem.Web.Http.Filters.ActionFilterAttribute

有什么不同吗?

4

2 回答 2

39

System.Web.Http一个用于 Web API;System.Web.Mvc用于以前的 MVC 版本。

从源码可以看出,Web API 版本有几个不同之处。

  • 它具有OnResultExecutingOnResultExecuted处理程序(“在操作结果执行之前/之后由 ASP.NET MVC 框架调用。”
  • 可以异步执行
  • 它不允许指定执行顺序
于 2012-09-26T16:37:08.857 回答
6

System.Web.Mvc.ActionFilterAttribute 旨在与 ASP.NET MVC 一起使用。System.Web.Http.Filters.ActionFilterAttribute 旨在与 ASP.NET Web API 一起使用。

MVC 是 Web 应用程序,Web API 是 HTTP 服务。

他们的 msdn 页面是System.Web.Mvc.ActionFilterAttributeSystem.Web.Http.Filters.ActionFilterAttribute

于 2012-09-26T16:35:08.257 回答