我是 Automapper 框架的新手。我有一个域类和一个 DTO 类,如下所示:
public class Employee { public long Id {get;set;} public string Name {get;set;} public string Phone {get;set;} public string Fax {get;set;} public DateTime DateOfBirth {get;set;} } public class EmployeeDto { public long Id {get;set;} public string FullName {get;set;} public DateTime DateOfBirth {get;set;} }
注意:类的属性“ Name ”的名称与Employee类的属性“ FullName ”的名称不同EmployeeDto。
Employee
EmployeeDto
这是将Employee对象映射到的代码EmployeeDto:
Mapper.CreateMap<Employee, EmployeeDto>(); // code line (***) EmployeeDto dto = Mapper.Map<Employee, EmployeeDto>(employee);
我的问题是:如果我想将Employee(源类)映射到EmployeeDto(目标类),我该如何指定映射规则?换句话说,我应该如何对上面的代码行(***)做更多的事情?
没关系,我自己找到了解决方案:
Mapper.CreateMap<Employee, EmployeeDto>() .ForMember(dest => dest.FullName, opt => opt.MapFrom(src => src.Name));