【问题标题】:Need Solution To implement server side sorting in kendo grid需要解决方案在剑道网格中实现服务器端排序
【发布时间】:2013-08-09 16:46:45
【问题描述】:

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

剑道网格脚本

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);
    }

*谁能帮我解决这个问题。 *

【问题讨论】:

  • 我发现this 对实现服务器端排序、分页甚至多列过滤非常有帮助。它来自 Telerik。 HTH
  • 用于初始化 Kendo 的 JS 对象不应该有属性sortable 如下所示:demos.telerik.com/kendo-ui/web/grid/sorting.html 吗?
  • 您可以将剑道网格数据存储在可观察对象中(例如,剑道可观察对象或淘汰可观察对象)并将其传递给 razor 以在服务器端进行解析。只是一个想法。

标签: kendo-ui kendo-grid


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-07-08
    • 2023-03-16
    • 1970-01-01
    • 2023-02-05
    • 1970-01-01
    • 1970-01-01
    • 2017-03-05
    • 1970-01-01
    相关资源
    最近更新 更多