我正在实施 jqGrid 并希望能够使用排序功能。我在排序与基表相关的列时遇到了一些问题。
这是加载网格的脚本:
public JsonResult GetData(GridSettings grid)
{
try {
using (IWE dataContext = new IWE())
{
var query = dataContext.LKTYPE.Include("VWEPICORCATEGORY").AsQueryable();
////sorting
query = query.OrderBy<LKTYPE>(grid.SortColumn,
grid.SortOrder);
//count
var count = query.Count();
//paging
var data = query.Skip((grid.PageIndex - 1) * grid.PageSize).Take(grid.PageSize).ToArray();
//converting in grid format
var result = new
{
total = (int)Math.Ceiling((double)count / grid.PageSize),
page = grid.PageIndex,
records = count,
rows = (from host in data
select new
{
TYPE_ID = host.TYPE_ID,
TYPE = host.TYPE,
CR_ACTIVE = host.CR_ACTIVE,
description = host.VWEPICORCATEGORY.description
}).ToArray()
};
return Json(result, JsonRequestBehavior.AllowGet);
}
}
catch (Exception ex)
{
//send the error email
ExceptionPolicy.HandleException(ex, "Exception Policy");
}
//have to return something if there is an issue
return Json("");
}
如您所见,描述字段是相关表的一部分(“VWEPICORCATEGORY”),并且 order by 以 LKTYPE 为目标。我试图弄清楚如何准确地对特定字段进行排序,或者甚至可能是使用多个表和排序功能来实现此网格的更好方法。
在此先感谢,比利