我在遗留系统中有一个实体,其格式为
public Guid Id {get;set;}
public int Duration {get;set;}
public bool DurationType {get;set;}
在ViewModel中,我有以下内容
public Guid Id {get; set;}
public int Duration {get;set;}
从实体到视图模型的映射工作正常,但是当我尝试从ViewModel映射到实体时,它就会死掉。
它似乎正在尝试在反向映射中调用非现有属性Duration.Type(即它试图自动展平)。这会导致错误Cannot map int32 to bool
。
有没有人对如何在AutoMapper中禁用自动展平或手动设置映射恰好使用属性的字段有任何建议。
答案 0 :(得分:2)
要从DurationType
映射到ViewModel
时将其忽略Entity
属性,将其添加到映射配置中:
Mapper.CreateMap<ViewModel,Entity>()
.ForMember(dest => dest.DurationType, options => options.Ignore());