Automapper com classe base e diferentes opções de configuração para implementações
Eu tenho duas classes (modelo de visão MVC) que herda de uma classe base abstrata.
abstract class BaseModel { }
class Car : BaseModel
{
public string Speed { get; set; }
}
class Camper : BaseModel
{
public int Beds { get; set; }
}
e deseja configurar o AutoMapper com a classe base, algo como:
Mapper.CreateMap<BaseModel, DataDestination>();
var someObj = new DataDastination();
Mapper.Map(instanceOfBaseModel, someObj);
Aqui eu recebo erro, porque o Automapper não tem configuração de Car ou Camper. Tentei configurar o Automapper com algo parecido com isto:
Mapper.CreateMap<BaseModel, DataDestination>()
.ForMember(dest => dest.SomeProp, mapper => mapper.MapFrom( .... ));
No MapFrom, vejo apenas propriedades da classe base! Como configurar o Automapper para usar BaseClass e expressões ForMember específicas para Car and Camper? Por exemplo, se for um Carro, mapeie essa propriedade a partir disso e, se for um Camper, mapeie essa propriedade de outro lugar.