public async Task <List <ImageDto> > Handle(GetImagesQuery request, CancellationToken cancellationToken) { DataBlock dataBlock = await _context.DataBlocks .SingleOrDefaultAsync(db => db.CreatedBy.Equals(request.UserId) && db.Id == request.DataBlockId, cancellationToken); if (dataBlock == null) { throw new NotFoundException(nameof(DataBlock), request.DataBlockId); } var images = await _context.DataBlockImages .Include(dbi => dbi.Image) .ThenInclude(i => i.Privacy) .Where(dbi => dbi.DataBlockId == dataBlock.Id) .Select(dbi => new ImageDto() { Id = dbi.ImageId, Title = dbi.Image.Title, Description = dbi.Image.Description, Privacy = new PrivacyEntityDto() { Id = dbi.Image.Privacy.Id, BeginDate = dbi.Image.Privacy.BeginDate, EndDate = dbi.Image.Privacy.EndDate, IsAlways = dbi.Image.Privacy.IsAlways.Value, PrivacyLevel = dbi.Image.Privacy.PrivacyLevel } }) .ToListAsync(cancellationToken); return(images); }
public async Task <IEnumerable <ImageViewModel> > Handle(GetImagesQuery message, CancellationToken cancellationToken) { var images = await _dbContext.Images.ToListAsync(); var viewModel = _context.Map(images); return(viewModel); }
public async Task ShouldGetAllImages() { await AddImage(); var handlerContext = TestContext.CreateHandlerContext <IEnumerable <ImageViewModel> >(RequestDbContext, CreateMapper()); var handler = new GetImagesQueryHandler(handlerContext); var message = new GetImagesQuery(); var result = await handler.Handle(message, CancellationToken.None); Assert.NotEmpty(result); }
public async Task<Result<PagedResult<Image>>> Handle(GetImagesQuery request, CancellationToken cancellationToken) { var auth = await _mediator.Send(new AuthorizeQuery { Username = request.Username, Password = request.Password}); if (auth.IsError) { return new Result<PagedResult<Image>> { IsError = true, Message = auth.Message}; } var images = _store.GetImages(request.SourceId) .OrderByDescending(p => p.Created); return new Result<PagedResult<Image>>(images.GetPagedResult<Image>(request.PageNumber, request.PageSize)); }
public async Task <Result <PagedResult <Events.Image> > > Images([FromBody] GetImagesQuery request) { return(await _mediator.Send(request)); }