Browse Source
- Also updating the UrlHelpExtensions to not have a dependency on the AccountControllermain
3 changed files with 60 additions and 5 deletions
@ -0,0 +1,12 @@ |
|||||
|
@page |
||||
|
@model ConfirmEmailModel |
||||
|
@{ |
||||
|
ViewData["Title"] = "Confirm email"; |
||||
|
} |
||||
|
|
||||
|
<h2>@ViewData["Title"]</h2> |
||||
|
<div> |
||||
|
<p> |
||||
|
Thank you for confirming your email. |
||||
|
</p> |
||||
|
</div> |
||||
@ -0,0 +1,45 @@ |
|||||
|
using System; |
||||
|
using System.Collections.Generic; |
||||
|
using System.Linq; |
||||
|
using System.Threading.Tasks; |
||||
|
using Microsoft.AspNetCore.Authorization; |
||||
|
using Microsoft.AspNetCore.Identity; |
||||
|
using Microsoft.AspNetCore.Mvc; |
||||
|
using Microsoft.AspNetCore.Mvc.RazorPages; |
||||
|
using Microsoft.eShopWeb.Infrastructure.Identity; |
||||
|
|
||||
|
namespace Microsoft.eShopWeb.Web.Areas.Identity.Pages.Account |
||||
|
{ |
||||
|
[AllowAnonymous] |
||||
|
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) |
||||
|
{ |
||||
|
return NotFound($"Unable to load user with ID '{userId}'."); |
||||
|
} |
||||
|
|
||||
|
var result = await _userManager.ConfirmEmailAsync(user, code); |
||||
|
if (!result.Succeeded) |
||||
|
{ |
||||
|
throw new InvalidOperationException($"Error confirming email for user with ID '{userId}':"); |
||||
|
} |
||||
|
|
||||
|
return Page(); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
Loading…
Reference in new issue