27 lines
705 B
C#
27 lines
705 B
C#
using System;
|
|
using MediatR;
|
|
using Microsoft.EntityFrameworkCore;
|
|
using Venues.DbContexts;
|
|
using Venues.Entities;
|
|
using Venues.Helpers;
|
|
using Venues.Queries;
|
|
|
|
namespace Venues.Handlers
|
|
{
|
|
public class GetVenuesQueryHandler : IRequestHandler<GetVenuesQuery, PagedList<Venue>>
|
|
{
|
|
private readonly VenuesContext _dbContext;
|
|
|
|
public GetVenuesQueryHandler(VenuesContext dbContext)
|
|
{
|
|
_dbContext = dbContext ?? throw new ArgumentNullException(nameof(dbContext));
|
|
}
|
|
|
|
public async Task<PagedList<Venue>> Handle(GetVenuesQuery request, CancellationToken cancellation)
|
|
{
|
|
return PagedList<Venue>.ToPagedList(await _dbContext.Venues.ToListAsync(), request.PageNumber, request.PageSize);
|
|
}
|
|
}
|
|
}
|
|
|