我有这两个模型
public class ModelA
{
public string name { get; set; }
public string email_address { get; set; }
}
public class ModelB
{
public string Name { get; set; }
public string EmailAddress { get; set; }
}
我有这个映射:
Mapper.Initialize(cfg => cfg.CreateMap<OldStudent, NewStudent>());
var newModel = Mapper.Map<NewStudent>(oldStudent);
我的映射无法正常工作,因为无法映射email_address和EmailAddress。
现在我想创建一个逻辑或插入代码,其中email_address将转向EmailAddress,因此映射将起作用(简而言之,我想删除下划线并使其成为CamelCase)
我也有太多属性,所以我不想使用手动映射(由automapper提供.ForMember方法)
我知道如何实现这一目标?提前谢谢。
答案 0 :(得分:0)
并将以下行添加到配置。
Mapper.Initialize(cfg => {
cfg.SourceMemberNamingConvention = new LowerUnderscoreNamingConvention();
cfg.DestinationMemberNamingConvention = new PascalCaseNamingConvention();
});
这可以解决问题。