0
下面是我的控制器的Edit
方法。一切工作正常,但代理FixedOrVariable
下拉的當前值沒有被設置爲默認值。但是,我可以正確編輯此值。ASP MVC3 - 下拉列表沒有設置正確的默認值
該字段FixedOrVariable
是該模型中的一個字符字段。它的值是F
或V
(總是大寫)。
這裏是控制器方法
public ActionResult Edit(int id)
{
var banklistagentid = db.BankListAgentId.Find(id);
ViewBag.BankID = new SelectList(db.BankListMaster, "ID", "BankName", banklistagentid.BankID);
SelectList tmpList = new SelectList(new[] { "AL", "AK", "AS", "AZ", "AR", "CA", "CO", "CT", "DE", "DC", "FM", "FL", "GA", "GU", "HI", "ID", "IL", "IN", "IA", "KS", "KY", "LA", "ME", "MH", "MD", "MA", "MI", "MN", "MS", "MO", "MT", "NE", "NV", "NH", "NJ", "NA", "NM", "NY", "NC", "ND", "MP", "OH", "OK", "OR", "PW", "PA", "PR", "RI", "SC", "SD", "TN", "TX", "UT", "US", "VT", "VI", "VA", "WA", "WV", "WI", "WY" });
ViewBag.StateCodeList = tmpList;
var fixedOrVariable = new[] {new {Text = "Fixed", Value = "F"}, new {Text = "Variable", Value = "V"}};
ViewBag.FixedOrVariable = new SelectList(fixedOrVariable, "Value", "Text", banklistagentid.FixedOrVariable);
return View(banklistagentid);
}
這裏是從視圖
<div class="editor-field">
@Html.DropDownListFor(model => model.FixedOrVariable, (SelectList)ViewBag.FixedOrVariable)
</div>
請檢查大約同樣的問題[這裏](http://stackoverflow.com/questions/781987/how-can-i-get-this-asp-net-mvc幾個答案-selectlist到工作/ 11705380#11705380)。 – ararog 2013-04-06 18:33:53
您的下拉菜單項是否正確顯示? – 2013-04-06 18:34:18
@ararog:不需要重寫'ToString'方法,應該是一個更簡單的解決方案。 – NealR 2013-04-06 18:39:19