2.7: Validating User Submitted Data




Last updated




Last updated
public class UserForRegister
{
[Required]
public string Username { get; set; }
[Required]
[StringLength(8, MinimumLength = 4, ErrorMessage = "Password must be between 4 and 8 characters.")]
public string Password { get; set; }
}[HttpPost("Register")]
public async Task<IActionResult> Register([FromBody] UserForRegister userForRegister)
{
if(!ModelState.IsValid)
return BadRequest(ModelState);
userForRegister.Username = userForRegister.Username.ToLower();
if (await _authService.UserExists(userForRegister.Username))
return BadRequest("Username is already taken");
var userToCreate = new User
{
Username = userForRegister.Username
};
var createUser = await _authService.Register(userToCreate, userForRegister.Password);
return StatusCode(201);
}[HttpPost("Register")]
public async Task<IActionResult> Register([FromBody] UserForRegister userForRegister)
{
if (!string.IsNullOrEmpty(userForRegister.Username))
userForRegister.Username = userForRegister.Username.ToLower();
if (await _authService.UserExists(userForRegister.Username))
ModelState.AddModelError("Username", "Username already exists");
if (!ModelState.IsValid)
return BadRequest(ModelState);
var userToCreate = new User
{
Username = userForRegister.Username
};
var createUser = await _authService.Register(userToCreate, userForRegister.Password);
return StatusCode(201);
}