//string connectionStr = Configuration.GetSection("AppSetting")["MapKey"]; public HomeController(UserSevice userService, SysUserSevice sysUserService, IOrderSevice orderSevice, IConnectionMultiplexer redis, IRedisClient redisClient, IMemoryCache memoryCache) { _userService = userService; _sysUserService = sysUserService; _orderSevice = orderSevice; _redis = redis; _redisClient = redisClient; _db = _redis.GetDatabase(); _server = redis.GetServer(redis.GetEndPoints()[0]); _memoryCache = memoryCache; }
public static SysUser GetLoginUser() { var context = HttpContext.Current; if (context.Session.Get <SysUser>(LoginUserSession) == null) { var state = context.AuthenticateAsync().Result; if (state.Succeeded) { ClaimsIdentity ident = (ClaimsIdentity)state.Principal.Identity; SysUserSevice sysUserSevice = HttpContext.Current.RequestServices.GetRequiredService <SysUserSevice>(); SysUser user = sysUserSevice.GetSysUserById(ident.Claims.FirstOrDefault(r => r.Type == ClaimTypes.NameIdentifier).Value); if (user == null) { throw new Exception("无效的登录用户"); } else { //var allUser = userSevice.GetUserList(user.ProjectId); //if (allUser.Count > 0) //{ // user.loginname = allUser.Select(r => r.LoginName).Distinct().ToArray(); // user.id = allUser.Select(r => r.Id).Distinct().ToArray(); //} //else //{ // user.loginname = new string[] { }; // user.id = new string[] { }; //} context.Session.Set(LoginUserSession, user); return(user); } } else { throw new Exception("请先登录"); } } else { return(context.Session.Get <SysUser>(LoginUserSession)); } }