public async Task <IEnumerable <AlbumDto> > Handle(GetAlbumsQuery request, CancellationToken cancellationToken)
        {
            Uri requestUrl = new Uri(_httpClient.BaseAddress, ApiConstants.GetAlbumsUrl);
            AuthenticationHeaderValue authHeader = await _localStorage.GetAuthHeaderValueAsync();

            return(await _httpClient.PostAsJsonAsync <GetAlbumsQuery, ICollection <AlbumDto> >(requestUrl, request,
                                                                                               authHeader));
        }
Exemple #2
0
        public async Task <IEnumerable <AlbumDto> > Handle(GetAlbumsQuery request, CancellationToken cancellationToken)
        {
            Guid userId = _httpContextAccessor.HttpContext.GetUserId();
            User user   = await _userManager.FindByIdAsync(userId.ToString());

            if (user.Id == request.UserId)
            {
                return(await _dbContext.Albums.Skip(request.Offset).Take(request.Count)
                       .Select(a => a.ToAlbumDto())
                       .ToArrayAsync(cancellationToken));
            }
            else
            {
                return(await _dbContext.Albums.Where(a => !a.IsPrivate).Skip(request.Offset).Take(request.Count)
                       .Select(a => a.ToAlbumDto())
                       .ToArrayAsync(cancellationToken));
            }
        }
Exemple #3
0
 public async Task <ActionResult <IEnumerable <AlbumDto> > > GetAlbums(GetAlbumsQuery query)
 => Ok(await _mediator.Send(query));
Exemple #4
0
 public async Task <List <Album> > Handle(GetAlbumsQuery query, CancellationToken cancellationToken)
 {
     return(await _repo.GetAlbums());
 }