2010-07-14 151 views
0

我的問題是,我想部分編輯我的模型 - 例如顯示2個字段並編輯另外2個字段。發生POST時,返回的模型只包含可編輯的字段,我僅用於顯示的其他字段爲NULL。如何解決這個問題,在POST上返回所有字段的模型,因爲在ERROR的時候我返回這個模型並且字段爲空不是很好?ASP.NET MVC 2模型部分綁定

回答

3

模型聯編程序僅將表單值綁定到具有setter的模型屬性。

取決於你需要什麼來實現:

您可以使用隱藏的輸入存儲在視圖中的值,這些必將回來(因爲該屬性有一個setter)

<%= Html.Hidden(Model.SomeField) %> 

class YourViewModel 
{ 
    public SomeField {get; set;} 

或者,您應該確保在您的控制器操作中您只更新顯示在視圖中的字段,而不是空字段。

理想情況下,您的視圖模型應該只包含與視圖相關的屬性(以及控制器處理的邏輯)。

+0

感謝此...「模型綁定器僅將表單值綁定到具有setter的模型屬性。」這是我一直在尋找的答案,現在超過5個小時。我知道我錯過了一些荒謬簡單的東西,在構建我自己的SO帖子時偶然發現了這一點。非常感謝! – reidLinden 2014-01-17 18:00:44