我需要我的GET Create操作方法来返回两个要传递给视图的列表。一个是下拉列表,所以SelectList类型很好。但是,另一个将显示为复选框。任何人都可以建议使用正确/最佳列表类型吗?
//
// GET: /Change/Create
public ActionResult Create()
{
ViewBag.StaffID = new SelectList(db.Staff, "StaffID", "Fullname")
ViewBag.BusinessAreas = new *?* (db.BusinessArea, "BusinessArea", "BuinessAreaName");
return View();
}
答案 0 :(得分:2)
您可以使用以下方式之一:
1.使用MultiSelectList。然后你将不得不使用jquery将复选框注入你的选择列表,或使用第三方控件,因为我相信MVC3没有任何内置的复选框。
2.在视图中创建一个循环,在循环内为每个项创建checkboxes。 (这是一个更多的工作)。
此外,请尽量避免使用ViewBag
。强类型ViewModels
比ViewBag
更好,可以提供更好的可维护性和许多其他优势。
答案 1 :(得分:1)
创建一个包含所需属性的自定义类并使用它List List = new List 在View中迭代以获取所有数据。即使您可以创建HTML Helper类并生成相同的内容并在视图中使用