jqGrid数据未显示但行正在生成

时间:2012-06-01 13:46:10

标签: c# jquery asp.net-mvc json jqgrid

我正在研究MVC应用程序。我在我的aspx页面写了一个jqGrid。

$(document).ready(function () {

            jQuery("#jqgajax").jqGrid({

                url: 'http://localhost:54136/home/fetchData',
                datatype: "json",
                colNames: ['ProcessName', 'WorkingSet64'],
                colModel: [
                            { name: 'ProcessName', index: 'ProcessName', width: 55 },
                            { name: 'WorkingSet64', index: 'WorkingSet64', width: 90 }
                        ],
                rowNum: 80,
                mtype:'Get',
                width: 700,
                rowList: [10, 20, 30],
                sortname:'id',
                viewrecords: true,
                sortorder: "desc",
                caption: "New API Example"
            });
        });

控制器上的C#代码:

 var jsonData = new
           {
               total =10,
               page = 10,
               records = 10,
               rows = (
                from p in pu
                select new
                {
                    id = ++counter,
                    cell = new
                    {
                        ProcessName = p.ProcessName.ToString(),
                        WorkingSet64 = p.Memory.ToString()
                    }
                }).ToArray()
           };


            return Json(jsonData,JsonRequestBehavior.AllowGet);

在网格中生成行的问题,但行中没有数据。 enter image description here

请让我知道我做错了什么。

1 个答案:

答案 0 :(得分:2)

默认jsonReader等待cell作为字符串数组。所以你应该替换代码的一部分

cell = new
{
    ProcessName = p.ProcessName.ToString(),
    WorkingSet64 = p.Memory.ToString()
}

cell = new [] { p.ProcessName, p.Memory.ToString() }