コード例 #1
0
 public IActionResult Register(UserToRegister user)
 {
     try
     {
         var u = new User.User(user.username, user.email, user.name, user.surname);
         using var context = new flashcardsContext();
         if (!IsValidEmail(u.Email))
         {
             throw new FormatException("Email format is not valid.");
         }
         if (context.users.Any(us => us.UserName == u.UserName | us.Email == u.Email))
         {
             if (context.users.Any(us => us.UserName == u.UserName))
             {
                 throw new FormatException("Username is already used");
             }
             else
             {
                 throw new FormatException("Email is already used");
             }
         }
         u.ChangePassword(user.password);
         context.users.Add(u);
         context.SaveChanges();
         return(Ok(u));
     }
     catch (FormatException e)
     {
         return(BadRequest(e.Message));
     }
 }