Handler.cs 766 B

123456789101112131415161718192021222324
  1. using Application.Abstractions.Messaging;
  2. using Application.Abstractions.Identity;
  3. namespace Application.Features.Director.Users.Get;
  4. public sealed class Handler(IIdentityUserReader userReader) : IQueryHandler<Query, List<Response>>
  5. {
  6. public async Task<List<Response>> Handle(Query request, CancellationToken ct)
  7. {
  8. var users = await userReader.GetAllUserAsync(ct);
  9. return [..users.Select(user => new Response
  10. {
  11. ID = user.ID,
  12. Name = user.FullName,
  13. Email = user.Email,
  14. Phone = user.PhoneNumber,
  15. IsDeleted = user.IsDeleted,
  16. EmailConfirmed = user.EmailConfirmed,
  17. LockoutEnd = user.LockoutEnabled,
  18. Roles = user.Roles
  19. })];
  20. }
  21. }