Met*_*hor 2 c# asp.net-mvc razor asp.net-mvc-5
这是代码:
@using SSA.Models;
<h2>@ViewBag.Title.ToString()</h2>
@{
using(Html.BeginForm()){
List<SelectListItem> selectList = new List<SelectListItem>();
foreach(Item c in ViewBag.Items)
{
SelectListItem i = new SelectListItem();
i.Text = c.Name.ToString();
i.Value = c.SiteID.ToString();
selectList.Add(new SelectListItem());
}
Html.DropDownList("Casinos", new SelectList(selectList,"Value","Text"));
}
}
Run Code Online (Sandbox Code Playgroud)
断点上的列表selectList显示它有108个值.什么渲染是一个空的形式.没有运行时错误.
注意:我知道使用ViewBag这不是最好的方法.这是丢失的代码,我只想了解为什么它不呈现下拉列表.
它不是渲染,因为它全部在剃刀代码块内(即@{ ... }
).试试这个:
@{
List<SelectListItem> selectList = new List<SelectListItem>();
foreach(Item c in ViewBag.Items)
{
SelectListItem i = new SelectListItem();
i.Text = c.Name.ToString();
i.Value = c.SiteID.ToString();
selectList.Add(new SelectListItem());
}
}
@using (Html.BeginForm())
{
@Html.DropDownList("Casinos", new SelectList(selectList,"Value","Text"));
}
Run Code Online (Sandbox Code Playgroud)
这是剃刀语法的快速参考.另外,虽然你已经提到这是丢失代码,但我还是会提到使用view [1] 模型[2],只是为了确保你已经意识到它们.如果你需要,我可以提供一个简单的例子.
归档时间: |
|
查看次数: |
11475 次 |
最近记录: |