Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 3 JQgrid排序MVC3_Asp.net Mvc 3_Razor_Jqgrid - Fatal编程技术网

Asp.net mvc 3 JQgrid排序MVC3

Asp.net mvc 3 JQgrid排序MVC3,asp.net-mvc-3,razor,jqgrid,Asp.net Mvc 3,Razor,Jqgrid,在我的CS页面中,我有以下代码 public JsonResult DynamicGridData(string sidx, string sord, int page, int rows) { Employee _emp = new Employee(); List<Employee> _lstemp = _emp.GetallEmp(); int pageIndex = Convert.ToInt32(page)

在我的CS页面中,我有以下代码

   public JsonResult DynamicGridData(string sidx, string sord, int page, int rows)
    {

        Employee _emp = new Employee();

        List<Employee> _lstemp = _emp.GetallEmp();
        int pageIndex = Convert.ToInt32(page) - 1;
        int pageSize = rows;
        int totalRecords = _lstemp.Count();
        int totalPages = (int)Math.Ceiling((float)totalRecords / (float)pageSize);


        var jsonData = new
        {
            total = totalPages,
            page,
            records = totalRecords,
            rows = (
                from emp in _lstemp
                select new
                {
                    i = emp.ID,
                    cell = new string[] { emp.ID.ToString(), emp.FirstName.ToString(), emp.LastName.ToString(),emp.Age.ToString(),emp.State.ToString(),emp.Country.ToString() }
                }).ToArray()
        };
        return Json(jsonData);
    }
public JsonResult DynamicGridData(字符串sidx、字符串sord、int页、int行)
{
员工_emp=新员工();
List _lstemp=_emp.GetallEmp();
int pageIndex=Convert.ToInt32(第页)-1;
int pageSize=行;
int totalRecords=_lstemp.Count();
int totalPages=(int)数学上限((float)totalRecords/(float)pageSize);
var jsonData=new
{
总计=总页数,
页
记录=总记录,
行=(
来自emp in_lstemp
选择新的
{
i=emp.ID,
cell=new string[]{emp.ID.ToString(),emp.FirstName.ToString(),emp.LastName.ToString(),emp.Age.ToString(),emp.State.ToString(),emp.Country.ToString()}
}).ToArray()
};
返回Json(jsonData);
}
我的模型是

     public class Employee
{
    public int ID { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public int Age { get; set; }
    public string State { get; set; }
    public string Country { get; set; }

    public List<Employee> GetallEmp()
    {
        List<Employee> list = new List<Employee>()
        {
            new Employee{ID=1,FirstName="Asish",LastName="Nehra",Age=25,State="A",Country="India"},
            new Employee{ID=2,FirstName="Nsish",LastName="Oehra",Age=35,State="B",Country="Sri Lanka"},
            new Employee{ID=3,FirstName="Psish",LastName="Lehra",Age=26,State="C",Country="Bangladesh"},
            new Employee{ID=4,FirstName="Jsish",LastName="Hehra",Age=25,State="D",Country="Australia"},
            new Employee{ID=5,FirstName="Usish",LastName="Tehra",Age=85,State="E",Country="Kenya"},
            new Employee{ID=6,FirstName="Rsish",LastName="Lehra",Age=15,State="F",Country="India"},
            new Employee{ID=7,FirstName="Isish",LastName="Eehra",Age=5,State="G",Country="Pakistan"},
             new Employee{ID=8,FirstName="Asish",LastName="Nehra",Age=25,State="A",Country="India"},
            new Employee{ID=9,FirstName="Nsish",LastName="Oehra",Age=35,State="B",Country="Sri Lanka"},
            new Employee{ID=10,FirstName="Psish",LastName="Lehra",Age=26,State="C",Country="Bangladesh"},
            new Employee{ID=11,FirstName="Jsish",LastName="Hehra",Age=25,State="D",Country="Australia"},
            new Employee{ID=12,FirstName="Usish",LastName="Tehra",Age=85,State="E",Country="Kenya"},
            new Employee{ID=13,FirstName="Rsish",LastName="Lehra",Age=15,State="F",Country="India"},
            new Employee{ID=14,FirstName="Isish",LastName="Eehra",Age=5,State="G",Country="Pakistan"},
             new Employee{ID=15,FirstName="Asish",LastName="Nehra",Age=25,State="A",Country="India"},
            new Employee{ID=16,FirstName="Nsish",LastName="Oehra",Age=35,State="B",Country="Sri Lanka"},
            new Employee{ID=17,FirstName="Psish",LastName="Lehra",Age=26,State="C",Country="Bangladesh"},
            new Employee{ID=18,FirstName="Jsish",LastName="Hehra",Age=25,State="D",Country="Australia"},
            new Employee{ID=19,FirstName="Usish",LastName="Tehra",Age=85,State="E",Country="Kenya"},
            new Employee{ID=20,FirstName="Rsish",LastName="Lehra",Age=15,State="F",Country="India"},
            new Employee{ID=21,FirstName="Isish",LastName="Eehra",Age=5,State="G",Country="Pakistan"},

        };
        return list;
    }
}
公共类员工
{
公共int ID{get;set;}
公共字符串名{get;set;}
公共字符串LastName{get;set;}
公共整数{get;set;}
公共字符串状态{get;set;}
公共字符串国家{get;set;}
公共列表GetallEmp()
{
列表=新列表()
{
新员工{ID=1,FirstName=“Asish”,LastName=“Nehra”,年龄=25,State=“A”,Country=“India”},
新雇员{ID=2,FirstName=“Nsish”,LastName=“Oehra”,年龄=35岁,State=“B”,Country=“斯里兰卡”},
新员工{ID=3,FirstName=“Psish”,LastName=“Lehra”,年龄=26,State=“C”,Country=“孟加拉”},
新员工{ID=4,FirstName=“Jsish”,LastName=“Hehra”,年龄=25,State=“D”,Country=“Australia”},
新雇员{ID=5,FirstName=“Usish”,LastName=“Tehra”,年龄=85,State=“E”,Country=“肯尼亚”},
新员工{ID=6,FirstName=“Rsish”,LastName=“Lehra”,年龄=15岁,State=“F”,Country=“India”},
新雇员{ID=7,FirstName=“Isish”,LastName=“Eehra”,年龄=5,State=“G”,Country=“Pakistan”},
新员工{ID=8,FirstName=“Asish”,LastName=“Nehra”,年龄=25,State=“A”,Country=“India”},
新雇员{ID=9,FirstName=“Nsish”,LastName=“Oehra”,年龄=35,State=“B”,Country=“斯里兰卡”},
新员工{ID=10,FirstName=“Psish”,LastName=“Lehra”,年龄=26,State=“C”,Country=“孟加拉”},
新员工{ID=11,FirstName=“Jsish”,LastName=“Hehra”,年龄=25,State=“D”,Country=“Australia”},
新雇员{ID=12,FirstName=“Usish”,LastName=“Tehra”,年龄=85,State=“E”,Country=“肯尼亚”},
新员工{ID=13,FirstName=“Rsish”,LastName=“Lehra”,年龄=15,State=“F”,Country=“India”},
新雇员{ID=14,FirstName=“Isish”,LastName=“Eehra”,年龄=5,State=“G”,Country=“Pakistan”},
新员工{ID=15,FirstName=“Asish”,LastName=“Nehra”,年龄=25,State=“A”,Country=“India”},
新雇员{ID=16,FirstName=“Nsish”,LastName=“Oehra”,年龄=35,State=“B”,Country=“斯里兰卡”},
新雇员{ID=17,FirstName=“Psish”,LastName=“Lehra”,年龄=26,State=“C”,Country=“孟加拉”},
新员工{ID=18,FirstName=“Jsish”,LastName=“Hehra”,年龄=25,State=“D”,Country=“Australia”},
新雇员{ID=19,FirstName=“Usish”,LastName=“Tehra”,年龄=85,State=“E”,Country=“肯尼亚”},
新员工{ID=20,FirstName=“Rsish”,LastName=“Lehra”,年龄=15,State=“F”,Country=“India”},
新雇员{ID=21,FirstName=“Isish”,LastName=“Eehra”,年龄=5岁,State=“G”,Country=“Pakistan”},
};
退货清单;
}
}
在我的Cshtml页面中

<script type="text/javascript">
jQuery(document).ready(function () {

    jQuery("#list").jqGrid({
        url: '/Home/DynamicGridData/',
        datatype: 'json',
        mtype: 'POST',
        colNames: ['ID', 'FirstName', 'LastName', 'Age', 'State', 'Country'],
        colModel: [
  { name: 'ID', index: 'ID', width: 40, align: 'left' },
  { name: 'FirstName', index: 'FirstName', width: 80, align: 'left' },
  { name: 'LastName', index: 'LastName', width: 80, align: 'left' },
  { name: 'Age', index: 'Age', width: 80, align: 'left' },
  { name: 'State', index: 'State', width: 80, align: 'left' },
  { name: 'Country', index: 'Country', width: 80, align: 'left' }],
        pager: jQuery('#pager'), 
        rowNum: 10,
        rowList: [10, 20, 30],
        sortname: 'ID, FirstName, LastName, Age, State, Country',
        sortorder: "Asc",
        viewrecords: true,
        imgpath: '/content/images',
        autowidth: true,
        width: '100%',
        height: '100%',
        multiselect: false,
        caption: "Grid example",
        loadComplete: function() {
        //jQuery("#myGridID").trigger("reloadGrid"); // Call to fix client-side sorting
    }
    });

    //jQuery("#list").jqGrid('navGrid', '#pager', { add: true, edit: true, del: true });
    jQuery("#list").jqGrid('navGrid', '#pager', { edit: false, add: false, del: false }, {}, {}, {}, { multipleSearch: true, multipleGroup: true, showQuery: true });


}); 
</script>

jQuery(文档).ready(函数(){
jQuery(“#list”).jqGrid({
url:“/Home/DynamicGridData/”,
数据类型:“json”,
mtype:“POST”,
colNames:['ID','FirstName','LastName','Age','State','Country'],
colModel:[
{名称:'ID',索引:'ID',宽度:40,对齐:'left'},
{name:'FirstName',index:'FirstName',宽度:80,对齐:'left'},
{name:'LastName',index:'LastName',宽度:80,对齐:'left'},
{名称:'Age',索引:'Age',宽度:80,对齐:'left'},
{名称:'State',索引:'State',宽度:80,对齐:'left'},
{名称:'Country',索引:'Country',宽度:80,对齐:'left'}],
pager:jQuery(“#pager”),
rowNum:10,
行列表:[10,20,30],
sortname:'ID、名、姓、年龄、州、国家',
分拣员:“Asc”,
viewrecords:是的,
imgpath:“/content/images”,
自动宽度:正确,
宽度:“100%”,
高度:“100%”,
多选:错,
标题:“网格示例”,
loadComplete:function(){
//jQuery(“#myGridID”).trigger(“reloadGrid”);//用于修复客户端排序的调用
}
});
//jQuery(“#list”).jqGrid('navGrid','#pager',{add:true,edit:true,del:true});
jQuery(“#list”).jqGrid('navGrid','#pager',{edit:false,add:false,del:false},{},{},{},{multipleSearch:true,multipleGroup:true,showQuery:true});
}); 
如何对所有列进行排序..我只想通过对所有字段设置sortable:true对所有字段进行排序


编辑控制器中的
格式不正确

您需要使用
OrderBy
,然后使用网格传递给控制器的
sidx,sord
值。我还在下面的示例中包括分页,因此网格只能显示数据集中的一页行

List pagedQuery =  _lstemp.AsQueryable().OrderBy(sidx + " " + sord).Skip((page - 1) * rows).Take(rows);
在您的代码> CalMeult(JQGrand安装程序)中,您将设置每一列要用

的属性PAR进行排序。
sortable:false、
sortable:true

如果你想让所有的东西都可以排序,你可以使用

$.extend($.jgrid.defaults, {sortable: true});
您将能够查看您的帖子,看到jqGrid告诉控制器要按哪个列排序以及方向

注意:对于此特定的
OrderBy
语法,您需要System.Linq.Dynamic dll。此dll可用:

  • 作为一个