Tôi là người mới vào khung công tác Automapper. Tôi có một lớp miền và một lớp DTO như sau:Cách xác định quy tắc ánh xạ khi tên các thuộc tính khác nhau
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;}
}
Lưu ý: tên của tài sản "Tên" của Employee
lớp không giống như tài sản "FullName" của EmployeeDto
lớp.
Và đây là đoạn code để lập bản đồ Employee
đối tượng để EmployeeDto
:
Mapper.CreateMap<Employee, EmployeeDto>(); // code line (***)
EmployeeDto dto = Mapper.Map<Employee, EmployeeDto>(employee);
Câu hỏi của tôi là: Nếu tôi muốn để lập bản đồ Employee
(nguồn lớp) để EmployeeDto
(lớp đích), làm thế nào tôi có thể xác định bản đồ qui định? Nói cách khác, làm thế nào tôi nên làm nhiều hơn với dòng mã (***) ở trên?
Có cách nào để xác định nó trên toàn cầu cho bất kỳ lớp, một cái gì đó giống như điều tiền tố/hậu tố? Ví dụ, tôi có một loạt các lớp học fro một thư viện có "Localizations" bất động sản mỗi. Và tôi muốn ánh xạ chúng tới các lớp có thuộc tính tương ứng được gọi là "LocalizedName". Tùy chọn duy nhất của tôi là thêm ForMember vào mỗi cấu hình ánh xạ? – NickAb
không có phương thức CreateMap nào trong lớp Mapper: ( –
@ Navid_pdp11 có, bạn cần phải có lớp Mapper tĩnh không phải là một cá thể –