/// <summary> /// 设置授权 /// </summary> protected virtual void SetAuthorization( ) { if (pagePowerList == null) { Redirect("/NotPower.html"); } string pageName = GameRequest.GetPageName( ); ModulePage modulePage = pagePowerList.Find(delegate(ModulePage mPage) { foreach (string str in mPage.PageName.Split(',')) { if (str.Equals(pageName, StringComparison.InvariantCultureIgnoreCase)) { return(true); } } ; return(false); }); if (modulePage != null) { moduleID = modulePage.ModuleID; } else { Redirect("/NotPower.html"); } }
/// <summary> /// 页面载入 /// </summary> /// <param name="e"></param> protected override void OnInit(EventArgs e) { //获取登录用户 userExt = Fetch.GetLoginUser(); if (userExt == null || userExt.UserID <= 0) { RedirectToLogin("/Login.aspx"); return; } //获取缓存资源信息 LoginCache cache = Fetch.GetLoginResources(userExt.UserID); //验证页面授权 string pageName = GameRequest.GetPageName(); ModulePage modulePage = (cache != null & cache.pagePowerList != null) ? cache.pagePowerList.Where(p => p.PageName.ToLower().Contains(pageName)).FirstOrDefault <ModulePage>() : null; if (modulePage == null || modulePage.ModuleID <= 0) { RedirectToLogin("/Login.aspx"); return; } moduleID = modulePage.ModuleID; //验证用户权限 userPower = (cache != null & cache.userPower != null) ? cache.userPower : null; if (userExt == null || userPower == null || userPower.Count == 0) { RedirectToLogin("/Login.aspx"); return; } if (userExt.RoleID != 1) { if (!userPower.ContainsKey(moduleID.ToString()) || (userPower[moduleID.ToString()] & Convert.ToInt64(Permission.Read)) <= 0) { Redirect("/NotPower.html"); return; } } }