예제 #1
0
 public TokenHandler Login(UserModel userModel)
 {
     using (var context = new ChatContext())
     {
         string    encryptedPassword = encryptionService.MD5Hash(userModel.password);
         UserModel user =
             context.UserModel
             .Include(currentUser => currentUser.role).SingleOrDefault(currentUser => currentUser.username.Equals(userModel.username));
         if (user != null && encryptedPassword.Equals(user.password))
         {
             TokenHandler tokenHandler = new TokenHandler();
             tokenHandler.token    = encryptionService.generateToken(user.id.ToString());
             tokenHandler.role     = user.role.name;
             tokenHandler.userId   = user.id;
             tokenHandler.username = user.username;
             return(tokenHandler);
         }
         return(null);
     }
 }
예제 #2
0
 public bool Register(UserModel loginModel)
 {
     if (loginModel.username.Length == 0 || loginModel.password.Length == 0)
     {
         return(false);
     }
     try {
         using (var context = new ChatContext())
         {
             RoleModel role = context.RoleModel.SingleOrDefault(currentRole => currentRole.name == Role.user.ToString());
             loginModel.role     = role;
             loginModel.password = encryptionService.MD5Hash(loginModel.password);
             context.UserModel.Add(loginModel);
             context.SaveChanges();
             return(true);
         }
     } catch (Exception e)
     {
         return(false);
     }
 }