public override async Task <GigDto> GetAsync(Guid id) { await GetGigIfExistsAsync(id); var queryable = await Repository.GetQueryableAsync(); var query = from gig in queryable join category in _categoryRepository on gig.CategoryId equals category.Id where gig.Id == id select new { gig, category }; var result = await AsyncExecuter.FirstAsync(query); var dto = await MapToGetOutputDtoAsync(result.gig); dto.CategoryName = result.category.Name; return(dto); }