我有一個關於MVC 3和更多關於視圖和模型的陳述的問題。我想提一提,我是MVC的新手,所以我只是在學習它。MVC3註冊表格和型號
基本上例如讓我們TE登記表:
我有一個控制器,視圖和模型,以註冊新用戶。
- 的AccountController
- Register.chtml
- AccountModel => RegisterationModel
現在,登記模型我有所有與數據註解數據成員,例如:
[Required]
[Display(Name = "User name")]
public string UserName { get; set; }
[Required]
[DataType(DataType.Password)]
[Display(Name = "Password")]
public string Password { get; set; }
然後在視圖中渲染。
讓我困擾,否則我真的不知道如何做正確:
好吧,我有RegistrationModel ......但後來,例如,如果我想使用戶的配置文件,應我再次調用registrationmodel或者它將會是profilemodel?所以基本上我會有很多相同的模型來渲染相同的東西......不是?
我不能有一個一般的模型,像用戶,然後用戶我可以通過RegistrationModel/ProfileModel進行查看。
也許理解我的意思有點困難,但我的想法是:例如,用戶提交表單,解析所有內容並用所有數據成員創建User對象,然後將此User對象被提交給DAL,並提交給DB。稍後有人訪問此用戶和DAL的配置文件時,將返回用戶對象,然後將其顯示出來。
所以基本上你在說什麼,我將不得不擁有RegistrationModel和ProfileModel以及一般的用戶類..? – Alnedru
基本上是的,這是最好的做法。你可能有你不需要的實例,1個模型就足夠了,但是一般來說,你應該使用視圖模型來爲你的視圖輸入表單。 – Marko
這是另一個關於這個問題的好文章:http://www.howmvcworks.net/OnModelsAndViewModels/ToModelOrViewModel – Marko