public async Task <IActionResult> Register(RegisterViewModel vm) { try { if (ModelState.IsValid) { var user = vm.ConvertToDataModel(); user = await _userService.Register(user); var principal = await _userService.Authenticate(user); await HttpContext .SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme, principal); return(RedirectToAction("Index", "Home")); } vm.Password = string.Empty; return(View(vm)); } catch (Exception ex) { return(Error(ex)); } }