可能重複:
ASP.NET MVC - Linq to Entities model as the ViewModel - is this good practice?ASP.NET MVC:使用EF實體作爲視圖模型?
是正常使用EF實體類在ASP.NET MVC視圖模型?
如果viewmodel與EF實體類的90%相同怎麼辦?
假設我在實體框架模型中有一個Survey類。它有90%符合查看編輯所需的數據。 與視圖模型應具有的唯一區別 - 是要使用一個或多個屬性(這是填充Survey對象所必需的,因爲EF類不能直接映射到它的屬性表示方式(子複選框,廣播組,等等))
你使用ViewData []傳遞它們嗎?或者用新的附加屬性創建一個Survey類(SurveyViewModel)的副本(它應該能夠將Survey中的數據複製並返回給它)?
編輯: 我也試圖避免使用Survey作爲SurveyViewModel屬性。當使用UpdateModel或使用默認聯編程序更新某些Survey屬性時,使用SurveViewModel控制器中的SurveillanceModel自定義屬性,而其他(不能直接映射到實體)時,它會顯得很奇怪。
Automapper的+1 ...剛發現它,我喜歡它。 – Martin 2010-10-19 19:05:34
ValueInjecter要好得多 – mare 2011-01-12 23:47:11
Automapper改變了我的生活,這是非常有用的,特別是一旦你習慣了它並學習映射導航屬性。 – JBeagle 2013-10-04 12:59:23