@page "/" @using global::Wishlist.Data; @using global::Wishlist.Models; @using global::Wishlist.Services; @using global::Wishlist.ViewModels; @using System.Security.Claims; @inject UserService UserService @inject RoleService RoleService @inject AuthenticationStateProvider AuthenticationStateProvider Index Welcome to your new app. @if (roles != null) {

Roles and Claims:
@foreach (var role in roles) { @("Role: ") @($"{role.Name} ") @("Claims: ") @($"{string.Join(",", role.RoleClaims.Select(x => $"({@x.ClaimType} - {x.ClaimValue})"))}")
} Default Users:
User: admin@admin.com Pass:123456
User: user@user.com Pass:123456

} @if (appUser != null && appUser.Value.userVM != null) {

(@appUser.Value.userVM.Email) User Roles and Claims:
User Role: @string.Join(",", appUser.Value.userVM.RoleNames) User Claims: @string.Join(",", appUser.Value.userVM.Claims.Select(x => $"({x.Type}-{x.Value})"))

}
@code { private ApplicationRole[]? roles; private (ApplicationUser? user, ApplicationUserViewModel? userVM)? appUser = null; private Dictionary>? userRoleswithClaims = null; protected override async Task OnInitializedAsync() { roles = (await RoleService.GetAllRoleswithClaimsAsync()).ToArray(); var authState = await AuthenticationStateProvider.GetAuthenticationStateAsync(); if (authState.User is null || authState.User.Identity is null || authState.User.Identity.Name is null) return; appUser = await UserService.GetUserbyUserNameAsync(authState.User.Identity.Name); } }