잠시 동안 드롭 다운 목록을 채우려고했지만 도움을 주셔서 감사합니다. 모델과 뷰 모델이 있고 Dropdownlist를 채우고보기로 보내려고하므로 사용자가 cartype을 선택하고 submit을 클릭 할 수 있습니다.ASP.NET MVC 드롭 다운 목록 채우기
public class Cars
{
public int CarId { get; set; }
public string Name { get; set; }
}
public class CarViewModel
{
public int SelectedCarId { get; set; }
public IEnumerable<SelectListItem> CarTypes;
}
public ActionResult FillDropDown()
{
var model = new ViewModel();
model.CarTypes = (from s in context.CarTypes
select new SelectListItem()
{
Text = s.Name,
Value = SqlFunctions.StringConvert((double)s.Id).Trim(),
}).ToList<SelectListItem>();
return View(model);
}
그래서보기에서이를 렌더링하는 방법에 대해 도움을 드리고 싶습니다. 나는 다음을 시도했지만 nullreference 예외가 발생합니다.
@Html.BeginForm("FillDropDownList","Home", FormMethod.Post,null)
{
@Html.DropDownListFor(x => x.SelectedCarId, Model.CarTypes);
<input type="submit" value="submit" />
}
작업 결과에서 'ViewModel'대신 'CarViewModel'을 사용하십시오. – ssilas777
예외는 어디서 들으십니까? '문맥'은 어디에서 왔는가? 그것은'null'입니까? 'Model.CarTypes' 또는'Model'이'null'입니까? – meilke
뷰에 보낼 때 올바른 데이터가 채워지는 것을 볼 수 있습니다. 뷰 반환 (모델). 하지만 그때 줄에 : @ Html.DropDownListFor (x => x.SelectedCarId, Model.CarTypes); Model.CarTypes가 비어 있다는 nullreference 예외가 발생합니다. – Zedex