考虑使用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
属性放入Model
中。像这样:
每次获取视图模型后,我必须逐个将ViewModel
的属性放进Model
中。
var model = Db.Models.Find(viewModel.Id);
model.a = viewModel.a;
model.b = viewModel.b;
Db.SaveChanges();
这总是会引起很多问题。有时我甚至会忘记提及一些属性,导致灾难的发生!我正在寻找类似于以下内容的东西:
Mapper.Map(model, viewModel);
顺便说一下:我只使用AutoMapper将模型转换为视图模型,但是反过来总是会遇到错误。
Mapper.CreateMap<ViewModel, Model>()
。 - Arturo Menchaca