public static IMappingExpression <TSource, TDest> MapPeriodisedCommon <TSource, TDest>(this IMappingExpression <TSource, TDest> mappingExpression) where TSource : PeriodisedPaymentEvent where TDest : PeriodisedPaymentsEventModel { return(mappingExpression .MapCommon() .ForMember(dest => dest.Amount, opt => opt.MapFrom(source => source.AmountDue)) .ForMember(dest => dest.DeliveryPeriod, opt => opt.MapFrom(source => source.DeliveryPeriod)) .ForMember(dest => dest.AgreementId, opt => opt.Ignore()) .ForMember(dest => dest.StartDate, opt => opt.MapFrom(source => source.StartDate)) .ForMember(dest => dest.PlannedEndDate, opt => opt.MapFrom(source => source.PlannedEndDate)) .ForMember(dest => dest.ActualEndDate, opt => opt.MapFrom(source => source.ActualEndDate)) .ForMember(dest => dest.CompletionStatus, opt => opt.MapFrom(source => source.CompletionStatus)) .ForMember(dest => dest.CompletionAmount, opt => opt.MapFrom(source => source.CompletionAmount)) .ForMember(dest => dest.InstalmentAmount, opt => opt.MapFrom(source => source.InstalmentAmount)) .ForMember(dest => dest.NumberOfInstalments, opt => opt.MapFrom(source => source.NumberOfInstalments)) .ForMember(dest => dest.ApprenticeshipId, opt => opt.MapFrom(source => source.ApprenticeshipId)) .ForMember(dest => dest.ApprenticeshipPriceEpisodeId, opt => opt.MapFrom(source => source.ApprenticeshipPriceEpisodeId))); }