模型数据没有绑定到dropdownlist mvc 4

时间:2014-04-09 20:32:03

标签: asp.net-mvc-4

我有一个剃刀视图,其中我试图实现创建和编辑选项。这是下拉字段的cshtml代码:

@Html.DropDownListFor(model => model.StateID, (SelectList)ViewBag.StateID, "--Select--", new { @Id = "ddlState" })

但是在编辑模式下,尽管根据模型填充了所有其他字段,但下拉列表未按模型显示已保存的选定值。我使用了一个视图包来填充下拉列表并且工作正常。状态填充在下拉列表中。

ViewBag.StateID = new SelectList(queryStatesInLookup, "LookupID", "LookupCode")

我调试了剃刀页面并进行了检查。我从模型中获取状态id(例如:8),但此值不会与下拉列表绑定。是什么赋予了? :/

2 个答案:

答案 0 :(得分:1)

显然,Viewbag不能与模型ID绑定的属性具有相同的名称。我的猜测是CLR无法在运行时解析动态对象类型Viewbag的冲突名称和模型属性名称。谢谢:))

答案 1 :(得分:0)

创建SelectList时,需要在其中传递选定的值。

在下面的示例中,将SelectedValue替换为您选择的实际值。

ViewBag.StateID = new SelectList(queryStatesInLookup, "LookupID", "LookupCode", SelectedValue)