2014-08-28 69 views
0

视图模型Automapper地图视图模型具有相同名称的

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); 

的问题是,它从视图模型中实体类申请人和FamilyMember姓映射Personal_Data_Surname。是否可以指定一个前缀为特定类型的

回答

0

你必须使用ForMemeber方法,用MapFrom选项的方法来定制你的映射,样品:

Mapper.CreateMap<ApplicationViewModel, Applicant>() 
     .ForMember(viewModel => viewModel.Personal_Data_Surname, 
        opt => opt.MapFrom(entity => entity.SurName)); 

然后,AutoMapper将映射Personal_Data_Surname视图模型的财产到SurName实体的财产。做到另一个实体。

相关问题