mvc filters

1.controller

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace TestMvc.Controllers
{
    public class HomeController : Controller
    {
        [CustomFilter]
        [ResultFilter]
        public ActionResult Index()
        {
            ViewBag.Title = "Home Page";
            //throw new Exception("");
            return View();
        }
    }
}

 2.filters

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web.Mvc;

namespace TestMvc
{
    public class CustomFilter : ActionFilterAttribute
    {
        public override void OnActionExecuted(ActionExecutedContext filterContext)
        {
            base.OnActionExecuted(filterContext);
        }

        public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            base.OnActionExecuting(filterContext);
        }
    }

    public class ExFilter : IExceptionFilter
    {
        public void OnException(ExceptionContext filterContext)
        {
           // throw new NotImplementedException();
        }
    }

    public class ResultFilter : ActionFilterAttribute,IResultFilter
    {
        public override void OnResultExecuted(ResultExecutedContext filterContext)
        {
            throw new NotImplementedException();
        }

        public override void OnResultExecuting(ResultExecutingContext filterContext)
        {
            throw new NotImplementedException();
        }
    }
}

 3.global filter

using System.Web;
using System.Web.Mvc;

namespace TestMvc
{
    public class FilterConfig
    {
        public static void RegisterGlobalFilters(GlobalFilterCollection filters)
        {
            filters.Add(new ExFilter());
            filters.Add(new HandleErrorAttribute());
        }
    }
}

  

时间: 2024-10-11 01:47:54

mvc filters的相关文章

ASP.NET MVC Filters 4种默认过滤器的使用【附示例】

http://www.cnblogs.com/oppoic/p/mvc_authorization_action_result_exception_filters.html ASP.NET MVC Filters 4种默认过滤器的使用[附示例] 过滤器(Filters)的出现使得我们可以在ASP.NET MVC程序里更好的控制浏览器请求过来的URL,不是每个请求都会响应内容,只响应特定内容给那些有特定权限的用户,过滤器理论上有以下功能: 判断登录与否或用户权限 决策输出缓存 防盗链 防蜘蛛 本地

.net core MVC Filters 过滤器的使用

一.过滤器的优级依次介绍如下(逐次递减): Authorization Filter ->  Resource Filter -> Acton Filter -> Exception Filter -> Result Filter 1.Authorization Filter  (权限过滤器) /// <summary> /// 权限过滤器 /// </summary> public class GlobalAuthorizationFilter : Att

System.Web.Mvc 和 using System.Net.Http 的 Filter

在尝试给webapi增加 ExceptionFilter时,出现了错误,经查询区别如下: System.Web.Mvc.Filters 是给mvc用的 System.Web.Http.Filters 是给webapi用的. MVC用的Filter在如下代码里增加新的filter: using System.Web; using System.Web.Mvc; namespace API { public class FilterConfig { public static void Regist

[转]ASP.NET Core 中文文档 第四章 MVC(4.3)过滤器

本文转自:http://www.cnblogs.com/dotNETCoreSG/p/aspnetcore-4_4_3-filters.html 原文:Filters 作者:Steve Smith 翻译:刘怡(AlexLEWIS) 校对:何镇汐 ASP.NET MVC 过滤器 可在执行管道的前后特定阶段执行代码.过滤器可以配置为全局有效.仅对控制器有效或是仅对 Action 有效. 查看或下载演示代码. 过滤器如何工作? 不同的过滤器类型会在执行管道的不同阶段运行,因此它们各自有一套适用场景.根

CRUD全栈式编程架构之MVC的扩展设计

MVC执行流程 路由的扩展 我理解的路由作用有以下几个 Seo优化,用“/”分开的url爬虫更爱吃 物理和逻辑文件分离,url不再按照文件路径映射 Controller,Action的选择 MVC路由的扩展 实话实说MVC的路由我很少去做扩展,在MVC4时代,还会去重写掉url的大小写,而在MVC5之后,MVC自带了配置去小写化url.不过有一个配置还是必须要提一下那就是Area,在你的系统达到一定规模之后,Controllers通过Area来管理将会变得更容易.这里给出我的Area扩展,很简单

MVC扩展Filter,通过继承ActionFilterAttribute为登录密码加密

与ActionFilter相关的接口有2个: □ IActionFilter 对action执行前后处理 void OnActionExecuting(ActionExecutingContext filterContext);可以在此对请求处理,甚至开启一个新的请求. void OnActionExecuted(ActonExecutedContext filterContext);可以在此对返回结果处理,甚至取消返回结果. 关于参数ActionExecutingContext和ActonEx

深度解析 ASP.NET MVC 5 (内部培训讲义)

深度解析 ASP.NET MVC 5 分享公司内部培训资料,如有错误,请批评指正. ASP.NET MVC基础 IoC容器 ASP.NET MVC可扩展性 ASP.NET MVC Filters & Cache ASP.NET MVC AJAX ASP.NET MVC Client Validation 资源文件目录结构 Model目录结构 View目录结构 View分解原则 关于Web.config 1. ASP.NET MVC基础 1.1. 一次请求的生命周期 一次请求从客户端/浏览器开始,

实现MVC自定义过滤器,自定义Area过滤器,自定义Controller,Action甚至是ViewData过滤器

MVC开发中几种以AOP方式实现的Filters是非常好用的,默认情况下,我们通过App_Start中的FilterConfig来实现的过滤器注册是全局的,也就是整个应用程序都会使用的,针对单独的Filter我们不得不去单独的Controller或者Action去定义 如图: 那么问题来了,我现在想在FitlerConfig里面去维护所有的过滤器,但是又想实现自定义的过滤器该咋搞,MVC默认不支持! 我们先来看看,MVC默认的Fitlers注册是怎样的官方源码:GlobalFilterColle

使用过滤器对mvc api接口安全加密

asp.net api接口安全 安全要求: b1.防伪装攻击(案例:在公共网络环境中,第三方 有意或恶意 的调用我们的接口) b2.防篡改攻击(案例:在公共网络环境中,请求头/查询字符串/内容 在传输过程被修改) b3.防重放攻击(案例:在公共网络环境中,请求被截获,稍后被重放或多次重放) b4.防数据信息泄漏(案例:截获用户登录请求,截获到账号.密码等) 设计原则 1.轻量级 2.适合于异构系统(跨操作系统.多语言简易实现) 3.易于开发 4.易于测试 5.易于部署 6.满足接口安全需求(满足