如何解决MVC 下拉列表未显示使用 ViewBag
我已经使用 Banks 表填充了 ViewBag.BankNames
ViewBag.BankNames = new SelectList(db.Banks,"BankId","BankName",applicationSettings.BankId);
其中 applicationSettings.BankdId 具有我需要在下拉列表中显示为选定值的值,然后传递 applicationSetting 模型对象进行查看。
在我的视图中,我使用了那个 ViewBag
@Html.DropDownListFor(model => model.BankId,ViewBag.BankNames as SelectList,"Select Bank",htmlAttributes: new { @class = "form-control" })
它会显示包含银行名称所有值的下拉列表,但选定的值是选择银行,而不是我在 ViewBag 中设置为选定值的值?
解决方法
您能否将 applicationSettings.BankId 分配给模型属性的 BankId 并检查..
您正在绑定 @Html.DropDownListFor(model => model.BankId,ViewBag.BankNames as SelectList,"Select Bank",htmlAttributes: new { @class = "form-control" }) 但在 model.BankId 中为零..
在返回查看之前分配 Model.BankId = applicationSettings.BankId
In Controller
public ActionResult Index()
{
var banks = new List<Banks>()
{
new Banks()
{
BankId =1,BankName = "Bank 1"
},new Banks()
{
BankId =2,BankName = "Bank 2"
}
};
var list = new SelectList(banks,"BankId","BankName");
ViewBag.Banks = list;
var modelBanks= new Banks();
modelBanks.BankId = 2;
return View(modelBanks);
}
In View
@model Banks
@using WebApplication3.Models
@Html.DropDownListFor(model => model.BankId,ViewBag.Banks as SelectList,"Select Bank")
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。