C# 如何在ASP.net MVC中的jqgrid中进行服务器端排序/分页

C# 如何在ASP.net MVC中的jqgrid中进行服务器端排序/分页,c#,asp.net-mvc,sorting,jqgrid,filtering,C#,Asp.net Mvc,Sorting,Jqgrid,Filtering,我正在使用以下代码构建jqgrid: $(document).ready(function () { $("#Data").jqGrid({ url: '/Home/LoadData', loadonce:true, datatype: "json", mtype: "GET", colNames:["ID"]

我正在使用以下代码构建jqgrid:

  $(document).ready(function () {
            $("#Data").jqGrid({
                url: '/Home/LoadData',
                loadonce:true,
                datatype: "json",
                mtype: "GET",
                colNames:["ID"],
                colModel: [
            { name: "Id",index:'ID',width:800, align: "center"}
                          ],
                pager: "#Pager",
                rowNum: '10',
                rowList: [10, 20, 30],
                sortname: "ID",
                sortorder: "asc",
                height: "auto",
                gridview:true,
                sortname: "ID",
                viewrecords: true,
                caption: "My First Grid",
                loadComplete: function (data) {
    var $this = $(this),
        datatype = $this.getGridParam('datatype');

    if (datatype === "xml" || datatype === "json") {
        setTimeout(function () {
            $this.trigger("reloadGrid");
        }, 100);
    }
}
            });
        });
这是工作绝对好。但是,这一切都发生在客户端。我还使用了loadonce:true到网格,这意味着网格一次加载所有数据

但是,我有大约30000张唱片

 loadonce=true 
这不是一个正确的选择。因此,我需要实现服务器端排序和服务器端分页

我需要一页一页地加载记录,但排序/筛选时应考虑所有记录


请在这方面提供帮助。如果可能,请提供用于分页和排序的C#代码和Jquery脚本的代码示例。

您可以查看“更新2”中的内容和一些其他答案部分。@Oleg..我很难理解这个答案..我没有使用实体框架..如果你写下你没有使用实体框架,它仍然没有给出你所做的任何信息。无论如何,参考答案显示了应采取的主要步骤。并显示在使用存储过程或任何直接SQL语句的情况下实现的主要步骤。您可以看到,您的问题更多地取决于您使用的数据库、对您使用的数据库的访问以及其他特定于数据库的实现细节。@Oleg..谢谢..您能指定需要设置/发送到将数据提取到数据库的方法的参数吗。我是说佩奇,索德,西德,罗兹,对不起打扰你了