コード例 #1
0
        public async Task <IActionResult> ConfirmEmail(string userId, string token)
        {
            if (userId == null || token == null)
            {
                return(RedirectToAction("index", "Home"));
            }

            var user = await Usermanager.FindByIdAsync(userId);

            if (user == null)
            {
                ViewBag.ErrorMessage = $"The User ID {userId} is invalid";
                return(View("NotFound"));
            }

            var result = await Usermanager.ConfirmEmailAsync(user, token);

            if (result.Succeeded)
            {
                string str = await ViewToStringRenderer.RenderViewToStringAsync(HttpContext.RequestServices, $"~/Views/Template/Welcome.cshtml", user.FullName);

                await _emailSender.SendEmailAsync(user.Email, "Welcome To Mobile Store", str);

                return(View("EmailConfirmed"));
            }

            ViewBag.ErrorTitle = "Email cannot be confirmed";
            return(View("Error"));
        }