18 lines
697 B
C#
18 lines
697 B
C#
using DigitalData.UserManager.Application.DTOs.User;
|
|
using System.Security.Claims;
|
|
|
|
namespace DigitalData.UserManager.API.Models;
|
|
|
|
public static class ModelExtensions
|
|
{
|
|
public static List<Claim> ToClaimList(this UserReadDto user) => new()
|
|
{
|
|
new (ClaimTypes.NameIdentifier, user.Id.ToString()),
|
|
new (ClaimTypes.Name, user.Username),
|
|
new (ClaimTypes.Surname, user.Name ?? ""),
|
|
new (ClaimTypes.GivenName, user.Prename ?? ""),
|
|
new (ClaimTypes.Email, user.Email ?? "")
|
|
};
|
|
|
|
public static Dictionary<string, object> ToClaimDictionary(this UserReadDto user) => user.ToClaimList().ToDictionary(claim => claim.Type, claim => (object)claim.Value);
|
|
} |