2011-05-11 66 views
5

我想知道模型綁定在ASP.NET MVC3中的工作原理。由於我仍然在等待我的專業ASP.NET MVC3書籍,並且使用Google搜索找不到任何內容,所以您是我最後的希望。使用C#在ASP.NET MVC3中綁定模型的好資源?

我知道如何執行綁定與簡單的對象,但是當涉及到ViewModels,特別是與嵌套List<T>,我無法執行綁定。

感謝

弗朗西斯

UPDATE:

爲了澄清,我的意思是模型,從景觀到行動方法結合,感謝

+0

爲什麼你不能?你知道你必須使用@Model =等等?與ViewModel一樣,它也是一樣的。但是,您的ViewModel包含來自各種實體的多個數據,與通常是單個實體(或實體集合)的正常模型進行比較。 – Rhapsody 2011-05-11 11:18:10

+0

@Rhapsody:對不起,我的意思是從View到Action Method的綁定。當然,其他方式非常簡單。謝謝 – CiccioMiami 2011-05-11 11:50:17

回答

0

這個問題還不完全清楚,所以我會解決我認爲你在尋求幫助。

如果View Model實體的屬性爲List<T>或某些其他可枚舉屬性,則它不會自動綁定到在標記爲HttpPost的操作方法中可用的結果模型實例。

您只需要找到一個地方來保存數據,或者,只需在Action方法中重新查詢它並更新已發佈的實例。

我發現的最可靠的方法涉及將數據序列化爲JSON並將這些值放入隱藏的表單字段,但是當我這樣做時,我的視圖模型不再具有List屬性,而是序列化的屬性。

這種困境通常迫使我重新評估數據在表單帖子上的可用性,在大多數情況下,這是因爲我試圖在具有不同需求的視圖之間重用視圖模型。

0

據我所知,是沒有變化模型綁定已經在mvc3中完成了,所以我想關於Pro ASP.NET MVC V2 Framework模型綁定的章節仍然有效。

我建議在必須將嵌套列表綁定到操作參數時使用javascript。