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); }
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"); } }
public async Task <Artist> GetAsync(IArtistContainer artistContainer) { return(await ArtistDataAccess.GetByAsync(artistContainer)); }