public async Task <Artist> GetByAsync(IArtistContainer artist)
        {
            var result = Mapper.Map <Artist>(await Context.Artist.IgnoreAutoIncludes()
                                             .Include(x => x.Album)
                                             .ThenInclude(x => x.Song)
                                             .FirstOrDefaultAsync(x => x.Id == artist.ArtistId));

            result.Album.ForAll(x => x.Artist = null);
            return(result);
        }
Esempio n. 2
0
        public async Task ValidateAsync(IArtistContainer artistContainer)
        {
            if (artistContainer == null)
            {
                throw new ArgumentNullException(nameof(artistContainer));
            }

            var album = await GetAsync(artistContainer);

            if (album == null)
            {
                throw new InvalidOperationException($"Album with id {artistContainer.ArtistId} not found");
            }
        }
Esempio n. 3
0
 public async Task <Artist> GetAsync(IArtistContainer artistContainer)
 {
     return(await ArtistDataAccess.GetByAsync(artistContainer));
 }