Automapper не находит конфигурацию карты типов для дочернего свойства

Я использую AutoMapper 6.1.1.0 и имею следующие типы:

Источник:

public class PaymentPlan
{
    private List<ScheduledPayment> _scheduledPayments = new List<ScheduledPayment>();
    private Rates _ratesApplied;

    public Rates RatesApplied
    {
        get { return _ratesApplied; }
        set { _ratesApplied = value; }
    }

    public List<ScheduledPayment> ScheduledPayments
    {
        get { return _scheduledPayments; }
        set { _scheduledPayments = value; }
    }
}

Адресат:

public class PaymentPlanModel
{
    public RatesModel RatesApplied { get; set; }

    public List<ScheduledPaymentModel> ScheduledPayments { get; set; }
}

public class ClassEnrollmentPaymentPlanVM : PaymentPlanModel
{
    public Guid PricePlanID { get; set; }

    public string Name { get; set; }

    public bool IsSelected { get; set; }

    public bool AutoDraftEnabled { get; set; }

    public bool BillingDayChoiceEnabled { get; set; }

    public List<int> AvailableBillingDays { get; set; }

    public int SelectedBillingDay { get; set; }
}

Отображение профиля конфигурации:

CreateMap<Rates, RatesModel>();
CreateMap<ScheduledPayment, ScheduledPaymentModel>();
CreateMap<PaymentPlan, PaymentPlanModel>();
CreateMap<PaymentPlan, ClassEnrollmentPaymentPlanVM>();
    //.IncludeBase<PaymentPlan, PaymentPlanModel>();

ClassEnrollmentPaymentPlanVM наследуется PaymentPlanModel, Я пытаюсь составить карту из источника PaymentPlan в ClassEnrollmentPaymentPlanVM заселить всю базу PaymentPlanModel свойства, но он жалуется, что это "Отсутствует конфигурация карты типов или неподдерживаемое сопоставление". за Rates -> RatesModel, При устранении этой ошибки я пытался закомментировать мой IncludeBase позвоните, но получите тот же результат. Я четыре раза проверил, правильны ли пространства имен. Почему он не находит мое отображение из Rates в RatesModel?

Редактировать:

Отображение инициируется так:

private static IMapper _mapper = MapperConfig.EntityWebMapper;
...

PaymentPlan paymentPlan = pmtCalc.CalculatePaymentPlan(calcInput);

ClassEnrollmentPaymentPlanVM paymentPlanVM = _mapper.Map<ClassEnrollmentPaymentPlanVM>(paymentPlan);

И точное исключение / сообщение об ошибке AutoMapperMappingException заявив:

Типы отображения ошибок.

Типы сопоставления: PaymentPlan -> ClassEnrollmentPaymentPlanVM CRM.Logic.CRM.PaymentCalculation.PaymentPlan -> CRM.MVCWeb.ViewModels.Enrollment.ClassEnrollmentPaymentPlanVM

Тип Конфигурация карты: PaymentPlan -> ClassEnrollmentPaymentPlanVM CRM.Logic.CRM.PaymentCalculation.PaymentPlan -> CRM.MVCWeb.ViewModels.Enrollment.ClassEnrollmentPaymentPlanVM

Недвижимость: RatesApplied

Внутреннее сообщение об исключении:

Отсутствует конфигурация карты типов или неподдерживаемое отображение.

Типы сопоставления: Rates -> RatesModel CRM.Logic.CRM.PaymentCalculation.Rates -> CRM.MVCWeb.Models.PaymentCalculation.RatesModel

0 ответов

Другие вопросы по тегам