C#自定义操作筛选器
示例
我们出于各种原因编写自定义操作过滤器。我们可能有一个自定义操作过滤器,用于记录日志,或在执行任何操作之前将数据保存到数据库。我们也可以从数据库中获取数据并将其设置为应用程序的全局值。
要创建自定义操作过滤器,我们需要执行以下任务:
建立课程
从ActionFilterAttribute类继承
覆盖至少下列方法之一:
OnActionExecuting–执行控制器操作之前,将调用此方法。
OnActionExecuted–执行控制器动作后调用此方法。
OnResultExecuting–在执行控制器动作结果之前调用此方法。
OnResultExecuted–执行控制器动作结果后调用此方法。
可以如下表所示创建过滤器:
using System;
using System.Diagnostics;
using System.Web.Mvc;
namespace WebApplication1
{
public class MyFirstCustomFilter : ActionFilterAttribute
{
public override void OnResultExecuting(ResultExecutingContext filterContext)
{
//您可以在此处从数据库中获取数据
filterContext.Controller.ViewBag.GreetMesssage = "Hello Foo";
base.OnResultExecuting(filterContext);
}
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
var controllerName = filterContext.RouteData.Values["controller"];
var actionName = filterContext.RouteData.Values["action"];
var message = String.Format("{0} controller:{1} action:{2}", "onactionexecuting", controllerName, actionName);
Debug.WriteLine(message, "Action Filter Log");
base.OnActionExecuting(filterContext);
}
}
}
热门推荐
10 新年门口花束祝福语简短
11 盘锦结婚祝福语大全简短
12 父母生日祝福语 简短独特
13 家庭恩爱祝福语简短英文
14 高考俄语祝福语大全简短
15 虎年祝福语 诗句唯美简短
16 生日婚礼祝福语简短精辟
17 虎年喝酒拜年祝福语简短
18 教师闺蜜祝福语简短