public override Task <IEnumerable <Models.Examination> > Handle(FinanceQuery param) { if (param == null) { throw new ArgumentNullException(nameof(param)); } var queryExpression = _examinationQueryBuilder.GetFinancePredicate(param); Expression <Func <Models.Examination, dynamic> > select = examination => new { id = examination.ExaminationId, site_location_id = examination.SiteLocationId, trust_location_id = examination.TrustLocationId, region_location_id = examination.RegionLocationId, national_location_id = examination.NationalLocationId, medical_team = examination.MedicalTeam, CreatedAt = examination.CreatedAt, case_completed = examination.CaseCompleted, nhs_number = examination.NhsNumber, waive_fee = examination.CaseOutcome.WaiveFee, case_outcome = examination.CaseOutcome }; return(GetItemsAsync(queryExpression, select)); }