Telerik下拉列表似乎没有绑定到JSON

时间:2016-10-26 05:40:24

标签: asp.net-mvc telerik kendo-dropdown

我尝试从我的数据库填充下拉列表。加载视图时,下拉列表微调器似乎有效,然后微调器消失,droplist为空?有人可以提出解决方案。干杯。

QLine.cs

public partial class QLine
    {
        [Key]
        public int lineId { get; set; }

        public int networkId { get; set; }

        [Required]
        [StringLength(50)]
        public string lineName { get; set; }

        public virtual QNetwork QNetwork { get; set; }
    }

LinesDroplistController.cs

public class LinesDroplistController : Controller
    {
        private KprModel db = new KprModel();

        public JsonResult GetMLines()
            {
            var result = db.QLines.Where(abc => abc.networkId == 1);
            return Json(result, JsonRequestBehavior.AllowGet);
            } 
     }

myView.cshtml

@(Html.Kendo().DropDownList()
.Name("LineDropDownList") 
.DataTextField("lineName") 
.DataValueField("lineId") 
.AutoBind(true)
.DataSource(source =>
 {
  source.Read(read =>
  {
   read.Action("GetMLines", "LinesDroplist"); 
   });
  })
 )

2 个答案:

答案 0 :(得分:0)

请试试这个:

source.Read(read =>
{
    read.Action("GetMLines", "LinesDroplist")
}).ServerFiltering(true);

当禁用serverFiltering时,组合框不会向服务器发出任何其他请求。

答案 1 :(得分:0)

改变时有用

var result = db.QLines.Where(abc => abc.networkId == 1);

var result = db.QLines.Where(abc => abc.networkId == 1).Select(x => new { x.lineName, x.lineId });