public async Task <List <ArtistModel> > GetArtistsAsync(ArtistsPageFilter filter) { var channel = new Channel(channelTarget, ChannelCredentials.Insecure); try { var client = new ArtistsGrpcService.ArtistsGrpcServiceClient(channel); var request = new GetArtistsRequest() { LibraryId = filter.LibraryId.ToString(), PageIndex = filter.PageIndex, PageSize = filter.PageSize, SearchText = filter.SearchText }; var response = await client.GetArtistsAsync(request); var artists = response.Artists.Select(s => ArtistGrpcConverter.ToModel(s)).ToList(); return(artists); } finally { await channel.ShutdownAsync(); } }
public override Task <GetArtistsResponse> GetArtists(GetArtistsRequest request, ServerCallContext context) { var artists = _artistsService.GetArtists(new ArtistsPageFilter() { LibraryId = Guid.Parse(request.LibraryId), PageIndex = request.PageIndex, PageSize = request.PageSize, SearchText = request.SearchText }); var response = new GetArtistsResponse(); response.Artists.AddRange(artists.Select(a => ArtistGrpcConverter.ToMessage(a))); //var popRanks = _libraryService.GetPopularityRankings().Select(s => new PopularityRankingMessage() { Id = s.Id.ToString(), Name = s.Name }); return(Task.FromResult(response)); }