如何使用数据库中的内容填充 @html.下拉列表

本文关键字:填充 @html 下拉列表 何使用 数据库 | 更新日期: 2023-09-27 18:33:12

我目前面临一个问题,希望你能提供帮助。我正在努力从数据库中收集信息以允许下拉列表的人口。下面是我的控制器中的代码,

public ActionResult Create()
{
  tblProductColour db = new tblProductColour();
  this.ViewData["Id"] = new SelectList(db.tblproducts.ToList(), "Id", "ProductColour");
  return View();
}

下面是视图中使用的代码:

@Html.DropDownList("Id")

提前感谢,

卡勒姆

如何使用数据库中的内容填充 @html.下拉列表

在控制器中,您可以将数据库的内容填充到如下所示的ViewBag中:

ViewBag.identifier = new SelectList(db.databaseName, "Id", "ProductColour");

然后在您的视图中,您像这样显示ViewBag

@Html.DropDownList("identifier", null, htmlAttributes: new { @class = "form-control" })

假设您使用的是bootstrap..因此class名称为form-control

确保下拉列表是否要在POST操作中使用,以将ViewBag放在控制器的两个操作中。

例如。。

public ActionResult Create()
{
    ViewBag.identifier = new SelectList(db.databaseName, "Id", "ProductColour");
}
[HttpPost]
public ActionResult Create([Bind(Include = "Id, ProductColour")] #modelName identify)
{
    ViewBag.identifier = new SelectList(db.databaseName, "Id", "ProductColour", identify.Id);
}

假设您有一个连接字符串分配给一个名为 db 的变量