2016-10-13 7 views
0

모델 상태 검사를 사용하고 있습니다. 따라서 오류가 발생하면 사용자에게 채워진 동일한 모델을 반환하려고합니다. 내 양식은 html.DropDownListFor입니다. 목록MVC html.DropdownFor : 목록 및 선택 바인딩

@Html.DropDownListFor(x => x.Item.SelectedId, Model.ItemList) 

드롭 다운 내 선택 목록 (Model.ItemList가) 널 말하는 오류 것입니다. 이것은 dropDownListFor이 선택한 값을 올바르게 바인딩했기 때문에 이제는 내 게시물 작업에서 null이됩니다. 이 문제를 해결할 기본 방법이 있습니까? 리스트 자체가 바운드되고 선택된 값.

나는 내가 좋아하는 같은과 전체 목록을 html.HiddenFor을하고 결합 할 수 알고 :

<input name="name[0].Id" type="text" /> 
<input name="name[1].Id" type="text" /> 
<input name="name[2].Id" type="text" /> 

아니면 심지어 나를 위해이 작업을 수행하는 내 자신의 확장을 작성할 수 있습니다.

지금 바로 게시물 작업에 나는 선택 목록을 다시 채우고 있지만, 내 검색에 아무것도 나오지 않았으므로 또 다른 방법이 있는지 궁금합니다.

+2

아니요. 올바른 방법입니다. http가 stateless이므로 목록을 다시 채워야합니다. – Shyju

답변