【发布时间】:2014-12-16 07:44:49
【问题描述】:
我在控制器中使用以下代码
BlueBusDB_Context db = new BlueBusDB_Context();
List<SelectListItem> li =new List<SelectListItem>();
li = db.M_BLUEBUS_STATES.Select(s => new SelectListItem {Text = s.STATE_NAME, Value = Convert.ToString(s.STATE_CODE)}).ToList();
ViewBag.State = li;
return View();
然后在我的创建视图中,我想绑定下拉菜单,并使用如下方式
@Html.DropDownList("State",ViewBag.State as List<SelectListItem>)
我收到上述错误..
【问题讨论】:
-
你可以使用
ViewBag.State = new SelectList(db.M_BLUEBUS_STATES, "STATE_CODE", "STATE_NAME"); -
非常感谢@StephenMuecke...它解决了我的问题...
-
在 EF >= 6.1 你可以使用
ToString()。 -
@StephenMuecke 你能帮我吗..因为你建议的答案对我有用但是如果我想要一个 where 条件那么我将如何更改 new SelectList(db.M_BLUEBUS_STATES, "STATE_CODE", "STATE_NAME ");
-
var myList = db.M_BLUEBUS_STATES.Where(.....); ViewBag.State = new SelectList(myList, "STATE_CODE", "STATE_NAME");
标签: c# asp.net-mvc linq