DropdownListFor
함수를 사용하여 드롭 다운 목록을 만들려고하고 있는데 값을 선택하고 싶습니다.asp.net에서 선택한 값 MVC 4.0 드롭 다운리스트
ViewModel
에
SelectList
객체를 갖는 솔루션의 유사한 종류를 발견
, 나는이
같은 유형SelectList
의 속성을 사용 내
ViewModel
에서는이
같은 시도
SelectList HoursToSelect = new SelectList(MyDictionaryObject, "Value", "Key", 14/*selected value*/);
나는이
@Html.DropDownListFor(m => m.EndsOnHour, HoursToSelect)
이 모든 일하는 벌금처럼 사용하고 있었다 차 내 요구 사항을 완전히
을 충족 그러나 문제는 내가 ViewModel
비 직렬화 CLASSE을 허용하지 않습니다 내 ViewModel
로 내 프로젝트에 SelectList
개체를 사용할 수 없습니다 내 프로젝트의 아키텍처 때문이다.
그래서 나를 위해 남아있는 유일한 방법은 여기서 뭔가
@Html.DropDownListFor(m => m.EndsOnHour, new SelectList(Model.Hours, "Value", "Key"))
그러나 몰라, 단지 내보기에 뭔가를하는 것입니다! 누구나이 목표를 달성 할 생각이 있습니까?
클라이언트 측 유효성 검사를 수동으로 수행해야합니다. 맞춤형 모델 바인더는 이와 관련하여 더 많은 수동 조정이 필요합니다. 정의 된 EditorTemplates에 대한 후크가 없습니다. 그리고 더 많은 코드. 마지막 하나는 정의마다 나쁘지 않지만이 foreach 루프를 드롭 다운 목록이 정의 된 모든보기에 복사하여 붙여 넣는 것입니다. 'DropDownListFor'는 실제로 dropdownlist를 생성하는 훌륭한 방법입니다. 모델의 속성에 바인딩하면 모든 것이 정상입니다.어떤 이유로이 방법이 마음에 들지 않으면 (5 분 이상을 들여다 보면서), 더 좋은 방법은 자신 만의 HTML 도우미를 만드는 것입니다. –