Files
mws.backend.dotnet/mws.application/Projects/Queries/SearchProjects.cs
T

17 lines
576 B
C#
Raw Normal View History

using AutoMapper;
using MediatR;
using Mws.Application.Common;
namespace Mws.Application.Projects;
public record SearchProjectsQuery(Guid UserId, string Term) : IRequest<List<ProjectDto>>;
public class SearchProjectsHandler(IUnitOfWork uow, IMapper mapper) : IRequestHandler<SearchProjectsQuery, List<ProjectDto>>
{
public async Task<List<ProjectDto>> Handle(SearchProjectsQuery query, CancellationToken ct)
{
var projects = await uow.Projects.SearchForUserAsync(query.UserId, query.Term, ct);
return mapper.Map<List<ProjectDto>>(projects);
}
}