我有两个类(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,以及 Car 和 Camper 的特定 ForMember 表达式?例如,如果是 Car,则从 this 映射此属性,如果是 Camper,则从其他位置映射此属性。