我有这个控制器动作
[HttpGet]
public ActionResult CreateTipoProyecto()
{
ViewBag.Categorias = _dbContext.Categoria.ToList();
return View();
}
[HttpPost]
public ActionResult CreateTipoProyecto(TipoProyectoDto tipoProyectoDto, Guid itemID)
{
//do something....
return View();
}
我正在尝试在我的视图中创建一个下拉列表,其中所选的值ID由后期操作接收
@Html.DropDownList("CategoriaId", (IEnumerable<EbanTabs.Models.Categoria>)ViewBag.Categorias)
//more things here...
//the post button here
我做错了什么?感谢
答案 0 :(得分:1)
首先创建一个选择列表
[HttpGet]
public ActionResult CreateTipoProyecto()
{
ViewBag.Categorias = new SelectList(_dbContext.Categoria, "CategoriaId", "column for drop down items");
return View();
}
在视图中使用razor创建下拉列表,在后期操作中,您将从TipoProyectoDto获取对象的id。我使用以下剃刀语法来满足我的下拉需求。
@Html.DropDownList("CategoriaId", null, "Please select category", htmlAttributes: new { @class = "form-control col-md-2"})
form-control和col-md-2是css类,因此它们可能对您有用,也可能对您没用。