Tôi đã đọc trên AutoMapper vì một câu trả lời cho một trong các câu hỏi trước đây của tôi here.
Nó nói rằng AutoMapper làm phẳng các mô hình miền phức tạp, nhưng tôi cần cái gì đó ngược lại. Tôi cần kết nối các mô hình khung nhìn của tôi (các mô hình miền phẳng) với các mô hình miền phức tạp để tôi có thể nhanh chóng chuyển đổi mô hình khung nhìn thành một mô hình miền.
Có điều gì tương tự với AutoMapper có mô hình xem và biến nó thành một mô hình miền phức tạp không?AutoMapper làm phẳng mô hình miền nhưng nó có làm ngược lại không? Nếu không, thì sao?
9
A
Trả lời
1
Không thực sự, bởi vì nó sẽ phải cực kỳ thông thường để có ích. Thật dễ dàng để phân biệt các mô hình khi làm phẳng, nhưng cách khác 'tròn ... chỉ là quá nhiều logic tùy chỉnh.
4
Bạn làm !. Bạn tạo ra một phương thức MapToModel, nơi bạn làm việc viết tay phải/trái và đồng bộ hóa cả hai.
public MyModel MapToModel(MyViewModelForm vmf)
{
//new up MyModel model;
model.foo = vmf.foo;
return model;
}
Nếu ứng dụng mã hóa chính xác, chúng ta sẽ làm gì để kiếm sống ...?
+2
ứng dụng tự mã hóa :) – Omu
2
các ValueInjecter hiện nó, và nó khá dễ sử dụng:
//flatenning
personDto.InjectFrom<FlatValueInjection>(person);
//unflattening
person.InjectFrom<UnflatValueInjection>(personDto);
và
//this is just mapping without flattening/unflattening
foo.InjectFrom(bar)
bạn có thể làm điều đó với các ValueInjecter http://valueinjecter.codeplex.com/ – Omu