97
我是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;}
}
注:屬性名稱「名稱」的Employee
類是不一樣的,即財產EmployeeDto
類的「全名」。
而這裏的映射代碼Employee
對象EmployeeDto
:
Mapper.CreateMap<Employee, EmployeeDto>(); // code line (***)
EmployeeDto dto = Mapper.Map<Employee, EmployeeDto>(employee);
我的問題是:如果我要地圖Employee
(源類)EmployeeDto
(目標類),我怎麼可以指定映射規則?換句話說,我應該如何使用上面的代碼行(***)做更多的事情?
有沒有在全球範圍內指定它的任何類,像前綴/後綴事情的方法嗎?例如,我有一堆來自圖書館的類,每個類都有「本地化」屬性。我想將它們映射到相應的屬性被稱爲「LocalizedName」的類。我唯一的選擇是將ForMember添加到每個映射配置? – NickAb 2016-05-20 14:43:20
Mapper類中沒有CreateMap方法:( – 2016-07-20 08:01:06
@ Navid_pdp11是的,你需要讓靜態類Mapper不是一個實例 – 2016-07-28 11:42:23