adminsystem/adminSystem.UI/Components/Account/IdentityUserAccessor.cs

18 lines
668 B
C#

using adminSystem.UI.Data;
using Microsoft.AspNetCore.Identity;
namespace adminSystem.UI.Components.Account {
internal sealed class IdentityUserAccessor(UserManager<ApplicationUser> userManager, IdentityRedirectManager redirectManager) {
public async Task<ApplicationUser> GetRequiredUserAsync(HttpContext context) {
var user = await userManager.GetUserAsync(context.User);
if (user is null)
{
redirectManager.RedirectToWithStatus("Account/InvalidUser", $"Error: Unable to load user with ID '{userManager.GetUserId(context.User)}'.", context);
}
return user;
}
}
}