Esempio n. 1
0
        protected override void Seed(DemoDbContext context)
        {
            var userRole = new UserRole
            {
                RoleType    = RoleType.User,
                RoleTypeNum = (int)RoleType.User,
                Description = "普通账号",
                Name        = "普通账号",
            };
            var adminRole = new UserRole
            {
                RoleType    = RoleType.Admin,
                RoleTypeNum = (int)RoleType.Admin,
                Description = "拥有管理所有资源的权限",
                Name        = "管理员账号",
            };

            context.UserRoles.Add(userRole);
            context.UserRoles.Add(adminRole);
            context.SaveChanges();
            var salt     = PublicHelper.CreateVerifyCode(4);
            var password = PublicHelper.MD5("123456" + salt);
            var member   = new Member
            {
                UserName  = "******",
                UnickName = "管理员",
                Email     = "*****@*****.**",
                PassWord  = password,
                Salt      = salt,
                UserRole  = adminRole
            };

            context.Members.Add(member);
            context.SaveChanges();
        }
Esempio n. 2
0
        /// <summary>
        /// 判断用户登录
        /// </summary>
        /// <param name="loginInfo">用户登录信息</param>
        /// <returns>操作结果</returns>
        public OperationResult Login(LoginInfo loginInfo)
        {
            var member =
                MemberRepository.CheckLogin(
                    m => m.Email == loginInfo.Access || m.UserName == loginInfo.Access);

            if (member == null)
            {
                return(new OperationResult(OperationResultType.QueryNull, "指定账号的用户不存在。"));
            }

            if (!PublicHelper.MD5(loginInfo.Password + member.Salt).EndsWith(member.PassWord, true, null))
            {
                return(new OperationResult(OperationResultType.Error, "密码错误"));
            }
            var loginLog = new LoginLog {
                IpAddress = loginInfo.IpAddress, Member = member
            };

            LoginLogRepository.Insert(loginLog);
            return(new OperationResult(OperationResultType.Success, "登录成功", member));
        }