【问题标题】:How to use WebApi ActionFilter Attribute如何使用 Web Api 动作过滤器属性
【发布时间】:2017-06-05 12:21:08
【问题描述】:

这里我写了简单的Action Filter As

 public class ActionFilter:ActionFilterAttribute
    {
        public override void OnActionExecuted(HttpActionExecutedContext actionExecutedContext)
        {
            Trace.WriteLine(string.Format("Action Method {0} executing at {1}",actionExecutedContext.ActionContext.ActionDescriptor, DateTime.Now.ToShortDateString()), "Web API Logs");
        }
        public override void OnActionExecuting(System.Web.Http.Controllers.HttpActionContext actionContext)
        {
            Trace.WriteLine(string.Format("Action Method {0} executed at {1}",actionContext.ActionDescriptor.ActionName,  DateTime.Now.ToShortDateString()));
        }

在 WebApi 中

[ActionFilter]
        public IHttpActionResult GetData()
        {
        }

在此之前和之后都可以使用,但我不明白为什么这个过滤器会出现

【问题讨论】:

标签: asp.net-web-api


【解决方案1】:

动作过滤器基本上用于在动作执行之前和之后执行一些逻辑。

让我们考虑两个场景:

  1. 如果您需要检查用户是否可以访问特定的Action,您可以简单地在代码的OnActionExecuting() 函数中编写代码来验证它。
  2. 同样,如果您想在执行 Action 后修改想要执行任何活动的响应,您可以使用 OnActionExecuted 函数过滤器。

有关过滤器的更多信息,您可以查看以下链接: Action Filters

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多