我已经使用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,"选择银行",htmlAttributes:new{@class="表单控件"}(,但在模型中。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")