在kendo ui dropdownlist中有多个数据源?

时间:2016-12-16 07:00:56

标签: asp.net-mvc kendo-ui

我使用以下内容:

@(Html.Kendo().DropDownListFor(m => m.AbcID)
            .OptionLabel("Select Abc")
            .DataTextField("AbcName")
            .DataValueField("AbcID")
            .AutoBind(true)
            .HtmlAttributes(new { style = "width: 300px" })
            .Filter(FilterType.Contains)
            .DataSource(source =>
            {
                source.Read(read =>
                {
                    read.Action("AutoCompleteAbcList", "Common").Data("GetSelectedXyz");
                });
            })

所以基本上发生的事情是下拉列表由AutoCompleteAbcList ActionMethod返回的Json填充。

我想知道的是,我有另一个返回Json的ActionMethod ddlPQRList,我想使用两个Jsons填充我的下拉列表。

我尝试了以下内容:

@(Html.Kendo().DropDownListFor(m => m.AbcID)
            .OptionLabel("Select Abc")
            .DataTextField("AbcName")
            .DataValueField("AbcID")
            .AutoBind(true)
            .HtmlAttributes(new { style = "width: 300px" })
            .Filter(FilterType.Contains)
            .DataSource(source =>
            {
                source.Read(read =>
                {
                    read.Action("AutoCompleteAbcList", "Common").Data("GetSelectedXyz");
                    read.Action("ddlPQRList", "Common").Data("GetSelectedXyz");
                });
            })

但没有获得所需的输出。我只从第二个ActionMethod获取列表。

感谢任何帮助。感谢。

1 个答案:

答案 0 :(得分:0)

不,这不可能像你想要的那样。小部件只能有一个dataSource。

第二个读取Action正在覆盖第一个。这与设置变量值两次相同 - 只有第二个变量值。

如果您希望DropDownList的dataSource是列表的串联,那么您需要创建一个返回该列表的单个控制器操作,即:

read.Action("AutoCompleteAbcListANDddlPQRList", "Common").Data("GetSelectedXyz");

其中AutoCompleteAbcListANDddlPQRList()的实现返回BOTH AutoCompleteAbcList和ddlPQRList列表的单个列表。