Exemple #1
0
        public async Task <IActionResult> Register([FromBody] ApplicationUserDto registrationDto)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var user = registrationDto.GetApplicationUser();

            var result = await _userManager.CreateAsync(user, registrationDto.Password);

            if (!result.Succeeded)
            {
                return(BadRequest(result));
            }

            if (!await _roleManager.RoleExistsAsync(ForumUserRole))
            {
                await _roleManager.CreateAsync(new ApplicationRole
                {
                    Name = ForumUserRole
                });
            }

            await _userManager.AddToRoleAsync(user, ForumUserRole);

            return(Ok("Account created"));
        }