Asp.net mvc dropdownlist不显示在视图中

Asp.net mvc dropdownlist不显示在视图中,asp.net-mvc,html.dropdownlistfor,Asp.net Mvc,Html.dropdownlistfor,这是我的控制器的一部分: // GET public ActionResult Create() { var query = from f in db.Stages select f; var sItems = new SelectList(query, "ID", "Name"); ViewBag.StagesList = sItems; return View();

这是我的控制器的一部分:

    // GET
    public ActionResult Create()
    {
        var query = from f in db.Stages
                    select f;
        var sItems = new SelectList(query, "ID", "Name");
        ViewBag.StagesList = sItems;
        return View();
    }
这是我的观点:

    <div class="editor-field">
        <%: Html.DropDownListFor(model => model.Name, ViewBag.StagesList as SelectList)%>
        <%: Html.ValidationMessageFor(model => model.Name) %>
    </div>

型号.名称,ViewBag.StagesList作为SelectList)%>
型号(名称)%%>

但是dropdownlist没有出现在视图中。为什么?问题是什么?

它可能在视图中,但存在逻辑缺陷,或者某个地方缺少结束标记。使用浏览器的“查看源”选项尝试查找元素以查看其是否正在渲染。我猜是的,但是没有呈现任何项目,也没有显示任何内容,或者某个地方有语法错误(尽管这通常不会隐藏它)。

在浏览器中查看源代码时,生成的HTML中是否存在下拉列表?你的页面上可能有一些javascript或CSS隐藏了它吗?是的,下拉列表显示在生成的HTML中。不,没有javascript代码或CSS可以隐藏,那么你应该可以看到:-)你能在浏览器中发布呈现的准确HTML吗?我将selectlist更改为selectlistitem,问题得到了解决。我不知道他们之间的区别!