博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MVC的基类
阅读量:6202 次
发布时间:2019-06-21

本文共 1656 字,大约阅读时间需要 5 分钟。

设计一个验证用户身份是否登陆的基类BaseController

///     /// 所有需要进行登录控制的控制器基类    ///     public class BaseController : Controller     {        ///         /// 当前登录的用户属性        ///         public UserInfo CurrentUserInfo { get; set; }        ///         /// 重新基类在Action执行之前的事情        ///         /// 
重写方法的参数        protected override void OnActionExecuting(ActionExecutingContext filterContext)        {            base.OnActionExecuting(filterContext);            //得到用户登录的信息            CurrentUserInfo = Session["UserInfo"] as UserInfo;            //判断用户是否为空            if (CurrentUserInfo == null)            {                Response.Redirect("/Login/Index");            }        }        protected override void OnException(ExceptionContext filterContext)        {            base.OnException(filterContext);            //错误记录            WHC.Framework.Commons.LogTextHelper.Error(filterContext.Exception);            // 当自定义显示错误 mode = On,显示友好错误页面            if (filterContext.HttpContext.IsCustomErrorEnabled)            {                filterContext.ExceptionHandled = true;                this.View("Error").ExecuteResult(this.ControllerContext);            }        }........................    }

有了这个基类,我们在主页的Home控制类,就可以使用用户信息对象了进行操作了,而且必须要求客户登陆了

public class HomeController : BaseController    {        public ActionResult Index()        {            if (CurrentUserInfo != null)            {                ViewBag.FullName = CurrentUserInfo.FullName;                ViewBag.Name = CurrentUserInfo.Name;            }            return View();        }................    }
本文转自xmgdc51CTO博客,原文链接:http://blog.51cto.com/12953214/1941204 ,如需转载请自行联系原作者

你可能感兴趣的文章
PowerDesigner 的简单使用(逻辑模型转物理模型和生成sql语句)
查看>>
appcan 移动、平台开发
查看>>
12 结构型模式-----享元模式
查看>>
fstream的文件操作
查看>>
通过js对表单对象的便捷获取
查看>>
Construct Binary Tree from Inorder and Postorder Traversal
查看>>
详细记录sql运行时间(精确到毫秒)
查看>>
pta7-19打印学生选课清单(模拟)
查看>>
vimrc
查看>>
Springboot-shiro-redis实现登录认证和权限管理
查看>>
使用Bootstrap-Table 遇到的问题
查看>>
I00015 打印等腰三角形字符图案(底边在上)
查看>>
HDU2502 月之数
查看>>
从浏览器渲染的角度谈谈html标签的语义化
查看>>
JS移动客户端--触屏滑动事件
查看>>
对于PHP大型开发框架的看法[转]
查看>>
11-03笔记图
查看>>
python基础练习
查看>>
Python编码与解码
查看>>
持续集成~Jenkins构建GitHub项目的实现
查看>>