asp.net-mvc – 如何将KendoUI DropDownListFor绑定到ViewData或ViewBag?

我正在尝试使用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")

dawei

【声明】:唐山站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。