2
我是MVC的新手,我試圖在同一頁面上綁定多個下拉列表,因此我可以從每個下拉列表中選取值並使用它來搜索數據庫。我的代碼給了我一個無限循環。任何人都可以告訴我我做錯了什麼,或者推薦一個更好的方法來實現這個目標?MVC Multiple DropDownLists on one page?
型號:
public class SelectViewModel
{
public SelectList MakeList { get; set; }
public SelectList ColorList { get; set; }
}
控制器:
public ActionResult Index()
{
SelectViewModel objSelectModel = new SelectViewModel();
List<Make> objMake = new List<Make>();
List<Color> objColor = new List<Color>();
objMake = GetMakeList();
SelectList objBindMake = new SelectList(objMake, "MakeID", "Make1", 0);
objColor = GetColorList();
SelectList objBindColor = new SelectList(objColor, "ColorID", "Color1", 0);
objSelectModel.MakeList = objBindMake;
objSelectModel.ColorList = objBindColor;
return View(objSelectModel);
}
public List<Make> GetMakeList()
{
var query = from m in makeRepository.Makes
select m;
var makes = query.ToList();
return makes;
}
public List<Color> GetColorList()
{
var query = from c in colorRepository.Colors
select c;
var colors = query.ToList();
return colors;
}
查看:
@model MvcApplication1.WebUI.Models.SelectViewModel
Make : @Html.DropDownList("Make", new SelectList(Model.MakeList, "Value", "Text", Model.MakeList.SelectedValue))
Color: @Html.DropDownList("Color", new SelectList(Model.ColorList, "Value", "Text", Model.ColorList.SelectedValue))
「無限循環」究竟是什麼意思?怎麼了?你怎麼知道這是一個無限循環?我看不出任何明顯的代碼錯誤。 – 2013-05-07 15:24:34
你有沒有嘗試過放入一個斷點並逐步完成源代碼? – Leniency 2013-05-07 15:27:04
唯一明顯不正確的部分是將SelectList從SelectList中取出,但不應該導致無限循環 - 這只是沒有必要的。 – 2013-05-07 15:29:03