排名
6
文章
6
粉丝
16
评论
8
{{item.articleTitle}}
{{item.blogName}} : {{item.content}}
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:
50010702506256
50010702506256
欢迎加群交流技术
分类:
权限
首先创建一个文件夹Filters并新建一个类IsAuthorizeAttribute继承AuthorizeAttribute,分别重写两个方法,如下代码
public class IsAuthorizeAttribute:AuthorizeAttribute
{
protected override bool AuthorizeCore(HttpContextBase httpContext) //处理返回bool结果
{
//判断是否已经登陆
if (httpContext.Session["User"] != null)
{
return true;
}
else
{
return false;
}
}
//这个方法是上面返回false在这里做相应的操作
protected override void HandleUnauthorizedRequest(AuthorizationContext filterContext)
{
//页面跳转,跳到登陆页面
filterContext.Result = new RedirectResult("~/login/Index");
}
}然后在设置全局什么鬼东西不知道怎么叫,具体在App_Start文件夹的FilterConfig类里设置,如下代码:
public class FilterConfig
{
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new HandleErrorAttribute());
//添加相应的类即可
filters.Add(new IsAuthorizeAttribute());
}
}然后为了防止循环的重定向访问地址,我们在过滤掉一些过滤器或者类,只需在相应的过滤器或者类上面[AllowAnonymous]就可以了,如下代码
[AllowAnonymous]//过滤掉可以访问该类
public class loginController : Controller
{
//
// GET: /login/
public ActionResult Index()
{
return View();
}
public ActionResult dealLogin(string userName, string userPassWord)
{
UserInfoDAL userinfoDal = new UserInfoDAL();
UserInfo User = userinfoDal.GetUserInfo(userName, userPassWord);
if (User != null)
{
return Json(1);
}
else
{
return Json(0);
}
}
}OK 这是自己巩固的独立完成的,加油自己哈哈

评价