committed by
GitHub
2 changed files with 54 additions and 0 deletions
@ -0,0 +1,13 @@ |
|||||
|
|
||||
|
@page |
||||
|
@model ConfirmEmailModel |
||||
|
@{ |
||||
|
ViewData["Title"] = "Confirm email"; |
||||
|
} |
||||
|
|
||||
|
<h2>@ViewData["Title"]</h2> |
||||
|
<div> |
||||
|
<p> |
||||
|
Thank you for confirming your email. |
||||
|
</p> |
||||
|
</div> |
||||
@ -0,0 +1,41 @@ |
|||||
|
using System; |
||||
|
using System.Threading.Tasks; |
||||
|
using Microsoft.AspNetCore.Identity; |
||||
|
using Microsoft.AspNetCore.Mvc; |
||||
|
using Microsoft.AspNetCore.Mvc.RazorPages; |
||||
|
using Microsoft.eShopWeb.Infrastructure.Identity; |
||||
|
|
||||
|
namespace Microsoft.eShopWeb.RazorPages.Pages.Account |
||||
|
{ |
||||
|
public class ConfirmEmailModel : PageModel |
||||
|
{ |
||||
|
private readonly UserManager<ApplicationUser> _userManager; |
||||
|
|
||||
|
public ConfirmEmailModel(UserManager<ApplicationUser> userManager) |
||||
|
{ |
||||
|
_userManager = userManager; |
||||
|
} |
||||
|
|
||||
|
public async Task<IActionResult> OnGetAsync(string userId, string code) |
||||
|
{ |
||||
|
if (userId == null || code == null) |
||||
|
{ |
||||
|
return RedirectToPage("/Index"); |
||||
|
} |
||||
|
|
||||
|
var user = await _userManager.FindByIdAsync(userId); |
||||
|
if (user == null) |
||||
|
{ |
||||
|
throw new ApplicationException($"Unable to load user with ID '{userId}'."); |
||||
|
} |
||||
|
|
||||
|
var result = await _userManager.ConfirmEmailAsync(user, code); |
||||
|
if (!result.Succeeded) |
||||
|
{ |
||||
|
throw new ApplicationException($"Error confirming email for user with ID '{userId}':"); |
||||
|
} |
||||
|
|
||||
|
return Page(); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
Loading…
Reference in new issue