Asp.net mvc MVC-@Html.Dropdown未填充ViewBag中的值
我是MVC的新手 我正在尝试开发一个MVC网页。我正在尝试使用@HtmlDropDownList,它必须使用ViewBag从我的web.config填充值。使用正确的值呈现页面,但是在输出屏幕上没有输出。下拉列表仅在屏幕上显示空值。有人能帮忙吗 网络配置代码:Asp.net mvc MVC-@Html.Dropdown未填充ViewBag中的值,asp.net-mvc,html-select,Asp.net Mvc,Html Select,我是MVC的新手 我正在尝试开发一个MVC网页。我正在尝试使用@HtmlDropDownList,它必须使用ViewBag从我的web.config填充值。使用正确的值呈现页面,但是在输出屏幕上没有输出。下拉列表仅在屏幕上显示空值。有人能帮忙吗 网络配置代码: <add key="ddlStreams" value="Las Vegas|India|Australia"/> 我的看法是: <div > <div class="form-control"&g
<add key="ddlStreams" value="Las Vegas|India|Australia"/>
我的看法是:
<div >
<div class="form-control">
<div class="row">
<div class="col-sm-4">
@Html.Label("Stream name")
</div>
<div class="col-md-8">
@Html.DropDownList("ddlStreamsVB1", ViewBag.ddlStreamsVB as IEnumerable<SelectListItem>)
</div>
</div>
</div></div>
单击查看源时呈现的HTML:
<div >
<div class="form-control">
<div class="row">
<div class="col-sm-4">
<label for="Stream_name">Stream name</label>
</div>
<div class="col-md-8">
<select id="ddlStreamsVB1" name="ddlStreamsVB1"><option value="Las Vegas"></option>
<option value="India"></option>
<option value="Australia"></option>
</select>
</div>
</div>
</div>
</div>
最后的产出:
问题是您没有设置SelectListItem的文本属性,更新如下:
ViewBag.ddlStreamsVB = reportTypes.Split('|')
.Select((value) => new SelectListItem
{ Value= value.ToString(),
Text = value
});
ViewBag.ddlStreamsVB = reportTypes.Split('|')
.Select((value) => new SelectListItem
{ Value= value.ToString(),
Text = value
});