Подумайте о том, ViewModel:лучший способ проецирования ViewModel обратно в модель
public class ViewModel
{
public int id {get;set;}
public int a {get;set;}
public int b {get;set;}
}
и оригинальная модель, как это:
public class Model
{
public int id {get;set;}
public int a {get;set;}
public int b {get;set;}
public int c {get;set;}
public virtual Object d {get;set;}
}
Каждый раз, когда я получаю вид модели я должен поставить все свойства ViewModel один один в модель. Что-то вроде:
var model = Db.Models.Find(viewModel.Id);
model.a = viewModel.a;
model.b = viewModel.b;
Db.SaveChanges();
Который всегда вызывает много проблем. Я даже иногда забываю упоминать некоторые свойства, а затем происходит катастрофа! Я искал что-то вроде:
Mapper.Map(model, viewModel);
BTW: Я использую automapper только для преобразования модели в ViewModel, но в наоборот я всегда сталкиваюсь с ошибками.
Если вы столкнулись с некоторыми проблемами с automapper затем разместить код, который используется для отображения моделей ViewModels. –
Вы имеете в виду, что я могу использовать automapper в режиме vise versa? – ghazyy
Мой опыт работы с automapper ограничен, но я уверен, что можно настроить, какие свойства должны быть сопоставлены и каким образом, чтобы вы могли игнорировать избыточные свойства или вычислять недостающие. –