c# - mvc 5 从表中选择列表,DropDownList 的值为空

标签 c# asp.net-mvc asp.net-mvc-5

我正在使用下面的代码创建一个下拉菜单

Controller

ViewBag.Id= new SelectList(db.TableName.OrderBy(x => x.Name),"Id","Name")

查看

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

我的问题是如何修改 SelectList 以添加一个空白项,以便为 DropDownList 自动添加一个空白项。

谢谢。

最佳答案

使用 overloads 之一接受 optionLabel

@Html.DropDownListFor(m => m.ID, (SelectList)ViewBag.MyList, "Please select", new { @class = "form-control" })

或者如果你不想使用强类型方法

@Html.DropDownList("ID", (SelectList)ViewBag.MyList, "Please select", new { @class = "form-control" })

这将使用第三个参数中指定的文本和 null 值添加第一个选项

<option value="">Please Select</option>

关于c# - mvc 5 从表中选择列表,DropDownList 的值为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35093841/

相关文章:

c# - 从 .ashx 压缩 Javascript 在浏览器中返回解码错误

c# - 在 C# 中从具有依赖接口(interface)的抽象类继承的正确方法

html - 使用 tbody 的新 css 在表中创建可滚动的 tbody

c# - Mvc 5 ViewPage<T> 编译后变为非通用 ViewPage

c# - 带有文化的 MVC5 本地化 - 拥有区域的问题

c# - 在 asp.net 中检测用户域

asp.net - Razor 不会自动为 View 创建共享文件夹?为什么不?

c# - 带有 MVC 的 Azure Active Directory,客户端和资源标识相同的应用程序

c# - 带有集合的模型 - Html.ListBoxFor 未设置选定项

c# - 发布新版 ASP.NET 网站 - 最佳实践