Automapper с базовым классом и различными вариантами конфигурации для реализаций
У меня есть два класса (модель представления MVC), который наследует от одного абстрактного базового класса.
abstract class BaseModel { }
class Car : BaseModel
{
public string Speed { get; set; }
}
class Camper : BaseModel
{
public int Beds { get; set; }
}
и хотите настроить AutoMapper с базовым классом, что-то вроде:
Mapper.CreateMap<BaseModel, DataDestination>();
var someObj = new DataDastination();
Mapper.Map(instanceOfBaseModel, someObj);
Здесь я получаю ошибку, потому что Automapper не имеет конфигурации Car или Camper. Попробовал настроить Automapper примерно так:
Mapper.CreateMap<BaseModel, DataDestination>()
.ForMember(dest => dest.SomeProp, mapper => mapper.MapFrom( .... ));
В MapFrom я вижу только свойства из базового класса! Как настроить Automapper для использования BaseClass и конкретного выражения ForMember для Car и Camper? Например, если это автомобиль, сопоставьте это свойство с этим, а если это автомобиль Camper, сопоставьте это свойство откуда-то еще.