4 回答

TA貢獻1890條經驗 獲得超9個贊
本質上,Model和View Model都是具有屬性的簡單類。
這些類的主要目的是為各自的觀眾(分別是控制器和視圖)描述一個對象(“模型”)。
所以當你說你是完全正確的
據我了解,這是一種模型,其特定目的是與View進行交互
因此,雖然模型類實際上是與您的應用程序交互的域實體,但是視圖模型是與視圖交互的簡單類。
希望能幫助到你 :)
更新:
微軟已經在很大程度上基于Model-View-Controller開發了Martin fowler的專用版本的Presentation Pattern,并將其稱為PF應用程序的Model-View-ViewModel(MVVM)。此模式針對的是現代UI開發平臺,在該平臺上,UI開發人員比傳統開發人員更多地基于業務邏輯來滿足不同的需求。在這里看看一些理論

TA貢獻1802條經驗 獲得超5個贊
用最簡單的術語來說,我想以下幾點:
模型:嚴格看起來和感覺像您的數據模型。出于所有目的和目的,它僅是數據模型的類表示。它不了解您的視圖或視圖中的任何元素。也就是說,它不應包含將用于視圖的任何屬性裝飾器(即,Required,Length等)。
視圖模型:作為視圖和模型之間的數據綁定器,在許多情況下,它也是模型的包裝。如果沒有View,它將變得無用,因此通常無法像標準Model一樣在多個View和Controller之間重用。
例如,您的模型可能具有以下屬性,它們是數據源的直接表示:
public string FirstName { get; set; }
public string LastName { get; set; }
現在,由于您的視圖模型已綁定到視圖,因此它可能具有以下屬性-將模型的名字字段和姓氏字段作為一個字符串連接在一起:
[Display(Name = "Customer Name")]
public string CustomerFullName { get { return String.Format("{0} {1}", myModel.FirstName, myModel.LastName) }}
- 4 回答
- 0 關注
- 673 瀏覽
添加回答
舉報