0

空我使用的是DropDownListFor這樣的:MVC3 DropDownListFor模型上回發

@Html.DropDownListFor(model => model.SelectedOrganisationValue, new SelectList(Model.OrganisationList, "Value", "Text")) 

而且我也使用:

[Required] 

可以在視圖屬性。

因此,當我PostBack視圖到服務器和必需的屬性將失敗,視圖再次顯示,但然後模型爲空。所以我會在Model.OrganisationList中得到一個NullReferenceException。

回答

2

這是默認行爲。如您所知,MVC不依賴於ViewState,它不能將內容保留在Postback(通用術語)的下拉內。您需要在ActionMethod中重新填充它。

+0

謝謝。我期望,當RequiredAttribute失敗時,Controller不會被調用。所以現在我在HttpPost的ControllerAction中檢查ModelState.IsValid,當它無效時,我將返回View(new Model())。謝謝! – Chris 2012-03-06 00:35:38