zoukankan      html  css  js  c++  java
  • MVC 过滤器的使用

    这几天项目中做了个过滤器 现在共享一下
    /// <summary>
        /// 有登录入口的过滤器 继承此BaseController就可以了
        /// </summary>
        public class BaseController : Controller,IAuthorizationFilter
        {
            protected override void OnActionExecuted(ActionExecutedContext filterContext)
            {
                if (filterContext.HttpContext.User.Identity.IsAuthenticated)
                {
                    filterContext.Result = new RedirectResult("/Home/Index");
                }
                else {
                    filterContext.Result = new RedirectResult("/Login/Index");
                }
            }
        }
        /// <summary>
        /// 嵌入到别人的网站下无登录入口过滤器
        /// </summary>
        public class ValidateLogin : ActionFilterAttribute
        {
            public override void OnActionExecuting(ActionExecutingContext filterContext)
            {
              //在判断IsAuthenticated前要在赋值 使用此方法就可以 FormsAuthentication.SetAuthCookie("testwty",false);
                if (!filterContext.HttpContext.User.Identity.IsAuthenticated)
                {
                    filterContext.Result = new RedirectToRouteResult("Default", new RouteValueDictionary(new {controller ="Home",action="ErrorDemo"}));
                }
            }
        }
        //在Controller 中添加
        [ValidateLogin]属性就可以了
     
    当然也可以在webconfig中添加
    <authorization>
          <deny users="?"/>
        </authorization>
    如果大家有更好的方法希望能共享一下
  • 相关阅读:
    1 . CentOS 7的yum更换为国内的阿里云yum源
    0. vagrant+vbox创建centos7虚拟机
    git上传到码云和下载到本地
    spring boot udp或者tcp接收数据
    你好,博客园
    使用firdder抓取APP的包
    初见loadrunner
    sublime快捷键大全
    html中行内元素与块级元素的区别。
    html.css溢出
  • 原文地址:https://www.cnblogs.com/houziwty/p/2269907.html
Copyright © 2011-2022 走看看