public IUser <int> GetUser(IIdentity objWI) { SysUserService objServ = new SysUserService(); return(objServ.AutoLogin(objWI)); }
/// <summary> /// 重写基类在Action执行之前的事情 /// </summary> /// <param name="filterContext">重写方法的参数</param> protected override void OnActionExecuting(ActionExecutingContext filterContext) { // if (!string.IsNullOrEmpty(Request["_AppID"])) { Session["AppID"] = Request["_AppID"]; } var objAppID = Session["AppID"]; AppId = 0; if (objAppID != null) { AppId = int.Parse(objAppID.ToString()); } else if (CommonService.lstSysWeChatConfig.Count > 0) { AppId = int.Parse(CommonService.lstSysWeChatConfig[0].WeixinAppId); Session["AppID"] = AppId; } // ViewBag.AppList = CommonService.lstWeChatConfig; // ViewBag.CurAppID = AppId; ////得到用户登录的信息 objLoginInfo = Session["UserInfo"] as SysUser; ////判断用户是否为空 应该使用 AuthorizeAttribute,临时解决一下 if ((objLoginInfo == null || !Request.IsAuthenticated) && (filterContext.ActionDescriptor.ActionName.ToLower() != "login" || filterContext.ActionDescriptor.ControllerDescriptor.ControllerName.ToLower() != "account")) { //windows登录,自动获取用户信息 if (objLoginInfo == null && (Request.IsAuthenticated && (User.Identity is WindowsIdentity))) { var windowsIdentity = (WindowsIdentity)User.Identity; SysUserService objServ = new SysUserService(); var objUser = objServ.AutoLogin(windowsIdentity); if (objUser != null) { objLoginInfo = objUser; Session["UserInfo"] = objLoginInfo; } else { } } if (filterContext.RequestContext.HttpContext.Request.IsAjaxRequest()) { AjaxResult <int> result = new AjaxResult <int>(); result.Message = new JsonMessage((int)HttpStatusCode.Unauthorized, "Please login"); filterContext.Result = Json(result, JsonRequestBehavior.AllowGet); } else { //Redirect() filterContext.Result = Redirect("~/Account/Login"); } // return; } if (objLoginInfo != null) { _BaseService.Repository.LoginUserID = objLoginInfo.Id; _BaseService.Repository.LoginUserName = objLoginInfo.LillyId; SetLanguage("EN"); } // System.Threading.Thread.Sleep(5000); //Logger log = Logger.GetLogger(filterContext.ActionDescriptor.ControllerDescriptor.ControllerType.FullName, CurrentUserInfo.USERREALNAME); //log.Debug(WEBUI.Common.LogHelper.GetActionInfo(filterContext)); //lstMenus=Session["UserMenus"] as List<BASE_SYSMENU>; base.OnActionExecuting(filterContext); }