我已經閱讀了Jimmy Bogards的文章,回顧了他們如何查看模型,在我自己的項目中我遇到了幾個地方,需要一次顯示在屏幕上的大量信息,例如需要填寫所有字段一次顯示的表單。顯示查看具有大量屬性的模型
所以我們認爲模型看起來像
public class FormViewModel
{
public string field1 {get;set;}
public int field2 {get;set;}
public DateTime field3 {get;set;}
public string field4 {get;set;}
...snip
public string field50 {get;set;}
}
現在的形式也有專門的章節,所以我們可以引入位結構進入的ViewModels這樣的:
public class FormViewModelSection1
{
public string field1 {get;set;}
public int field2 {get;set;}
}
public class FormViewModelSection2
{
public DateTime field3 {get;set;}
public string field4 {get;set;}
}
,然後主viewmodel變成
public class FormViewModel
{
public FormViewModelSection1 {get;set;}
public FormViewModelSection2 {get;set;}
}
所以我們會將更復雜的viewmodel返回給ma鑑於基本上只是代表它的每一個部分了一條通過的RenderPartial形式呈現
<div>
My form
<%: Html.RenderPartial("soemascx", Model.FormViewModelSection1)%>
</div>
或可能使用editorfor來呈現內容。
我的問題是,視圖模型的「重構」是一個有效的事情,或者它是否使得視圖模型如此平坦所提供的一些好處得以消除。
我遵循這個確切的模式,除了我使用'EditorTemplates'而不是partials。 – jrummell