需要解决方案在kendo网格中实现服务器端排序

时间:2013-08-08 04:50:35

标签: kendo-ui kendo-grid

我正在尝试在我的MVC应用程序中使用kendo网格实现服务器端排序。但排序选项没有显示。我已经仔细检查过我已经启用了所有必要的选项(使服务器输出为真实的kendo网格数据源并使可滚动到true为网格元素)来执行此操作,但我仍然能够找到可排序的选项。下面是我的剑道网格代码

Kendo Grid Script

var grid = $("#grid");
    grid.children().remove();
    grid.kendoGrid({
        columns: [{attributes:"",field:"",template:"${ResultFields[0].Value},title:"Column 1",width:"110px"},{attributes:"",field:"",template:"${ResultFields[1].Value},title:"Column 1",width:"110px"}],
        resizable: true,
        reorderable: true,
        scrollable: true,
        filterable: true,
        columnMenu: true,
        selectable: "row",
        selectable: "multiple",
        dataBound: function () { alert("Data Bound"); },
        dataSource: {
            transport: {
                read: {
                    url: '@Url.Action("Index", "KendoServerSideSorting")',
                    type: "GET",
                    dataType: "json",
                    traditional: true,
                    data: {
                        itemTypeId: 1,
                        where: values,
                        orderBy: ["", "", ""],
                    },
                },
            },
            schema: {
                data: "Items",
                total: "TotalItems",
            },
            serverPaging: true,
            pageSize: 10,
            error: function (e) {
                alert(e.errors);
            }
        },
        pageable: {
            pageSize: 10,
            input: true,
            pageSizes: [10, 20, 30, 50, 100, 250],
        },
        change: function () { alert("Change event"); },
    })

控制器操作将如下所示

public JsonResult Search(int itemTypeId, int skip, int take, string[] where, string[] orderBy)
    {
        var v = Kernel.Get<IItemSearch>().Search(itemTypeId, skip, take, where, orderBy);
        return Json(v, JsonRequestBehavior.AllowGet);
    }

* 任何人都可以帮我解决此问题。 *

1 个答案:

答案 0 :(得分:0)

您可以使用KendoGridBinderEx中的帮助程序功能来解析所有命令(如过滤和排序),并使用DynamicLinq自动在服务器端进行过滤和排序。

有关示例,请参阅此项目:https://github.com/StefH/KendoGridBinderEx
也可用作NuGet包:https://www.nuget.org/packages/KendoGridBinderEx/