我正在尝试使用KendoUI DropDownListFor作为我的模型外键并将其与ViewData / ViewBag完整列表绑定但似乎无法正常工作,我错过了什么?
@(Html.DropDownListFor(model => model.Hotel.HotelStatusId,ViewData["HotelStatuses"] as SelectList))
这似乎工作,但要求我创建一个viewmodel.
@(Html.Kendo().DropDownListFor(model => model.Hotel.HotelStatusId) .BindTo(Model.HotelStatuses) .OptionLabel("select hotel status...") )
我正在避免使用viewmodel,因为我需要将数据提交回ASP MVC.使用自定义viewmodel,我无法正确绑定它.
解决方法
Viewbag / ViewData可以在控制器中像这样填充:
ViewData["HotelStatuses"] = new SelectList(db.HotelStatuses,"HotelStatusId","HotelStatusText");
在视图中,您可以使用ViewData / ViewBag:
@(Html.Kendo().DropDownListFor(model => model.Hotel.HotelStatusId) .BindTo(ViewData["HotelStatuses"] as SelectList)) .DataTextField("Text")