public static Admin AdminLogin(string keyword, string password) { var context = new DataContext(); var account = context.Admins.Where(x => x.AdminName == keyword.Trim()).FirstOrDefault(); if (account != null) { var result = DeCrypt.VerifyPassWord(password, account.Password, account.Salt); if (!result) { return(null); } HttpContext.Current.Session[cookieName] = account; HttpCookie cookie = new HttpCookie(cookieName, account.AdminName); HttpContext.Current.Response.Cookies.Add(cookie); HttpCookie cookie2 = new HttpCookie(tokenName, account.AdminName.ToMD5() + account.Password); HttpContext.Current.Response.Cookies.Add(cookie2); return(account); } else { return(null); } }
public static string UserLogin(string keyword, string password) { var userService = new Model.DataContext(); var account = userService.Users.First(a => a.UserName == keyword.Trim()); if (account != null) { var result = DeCrypt.VerifyPassWord(account.Password, password, account.Salt); if (!result) { return(null); } if (account.Token == null) { account.Token = Guid.NewGuid().ToString("N"); account.LastLoginTime = DateTime.Now; userService.Entry(account).State = EntityState.Modified; userService.SaveChanges(); } else { ////如果想实现同一账号同一时间只能一处登录,就用开放以下这段代码 //string key = prefixKey + account.Token; //MvcCore.Extensions.CacheExtensions.ClearCache(key); account.Token = Guid.NewGuid().ToString("N"); account.LastLoginTime = DateTime.Now; userService.Entry(account).State = EntityState.Modified; //MvcCore.Unity.Get<Data.Service.ISysDBTool>().Commit(); } var token = Login(account.Token); return(token); } return(null); }