视图模型
public string Personal_Data_Surname { get; set; }
public string FamilyMember_SurName { get; set; }
实体类申请人
public string SurName { get; set; }
实体类FamilyMember
public string SurName { get; set; }
Automapper配置
Mapper.Configuration.RecognizePrefixes("Personal_Data_");
Mapper.CreateMap<ApplicationViewModel, Applicant>();
Mapper.Configuration.RecognizePrefixes("FamilyMember_");
Mapper.CreateMap<ApplicationViewModel, FamilyMember>();
控制器代码映射实体
Applicant applicant = Mapper.Map<ApplicationViewModel, Applicant>(vaModel);
FamilyMember familyMember = Mapper.Map<ApplicationViewModel, FamilyMember>(vaModel);
问题在于它将Personal_Data_Surname从viewmodel映射到实体类Applicant和FamilyMember中的Surname。是否可以为特定类型指定前缀
答案 0 :(得分:0)
您必须使用ForMemeber
方法自定义地图,并使用MapFrom
选项方法进行示例:
Mapper.CreateMap<ApplicationViewModel, Applicant>()
.ForMember(viewModel => viewModel.Personal_Data_Surname,
opt => opt.MapFrom(entity => entity.SurName));
然后,AutoMapper会将Personal_Data_Surname
viewModel的属性映射到SurName
实体的属性。对另一个实体做。