ASP.NET MVC 选择选择列表的选项值



我正在渲染一个下拉列表。

ViewBag.Categories = new SelectList(db.HelpCategories, "ID", "Name");

在我看来,我是这样称呼它的:

Categories: @Html.DropDownList("Categories", (SelectList)ViewBag.Categories, "All")

为此,我得到了这样的选择值。

<select id="Categories" name="Categories">
   <option value="">All</option>
   <option value="1">Dėl Krepšelių</option>
</select>

我真的需要将"全部"的值设置为 0。想不出办法。找到了一个教程,它是用SelectListItem完成的,但这不适合我的代码。任何帮助真的非常感谢,谢谢。

您始终可以在操作方法中构建 SelectListItem 列表,您可以在其中添加具有特定value的项目,并且如果您绝对需要,可以显式text

var categoryList = new List<SelectListItem>
{
    new SelectListItem { Value="0", Text = "All"}
};
categoryList.AddRange(db.HelpCategories
                        .Select(a => new SelectListItem {
                                                          Value = a.Id.ToString(),
                                                          Text = a.Name}));
ViewBag.CategoryList = categoryList;
return View();

现在,在您的视图中,您将使用 ViewBag.CategoryList 来构建 SELECT 元素

@Html.DropDownList("Categories", ViewBag.CategoryList as IEnumerable<SelectListItem>)

最新更新