我正在尝试从具有多个连接的查询中加载可排序的 jqgrid 3.5,并且由于我是 Linq 和 jqgrid 的新手,因此遇到了很多困难。为了允许排序,我首先尝试使用动态 SQL 加载它。
由于我从多个表中提取列,我假设我的返回将是一个我将填充的类对象(或者它将是一个表)。使用带有多个 .JOIN 子句的动态 SQL 时,如何返回 IQueryable 自定义类对象。如果这是不可能的,我如何从存储过程调用中返回 IQueryable 数据。在存储过程中创建动态 SQL 很容易——但是我不确定如何使用它加载我的网格。
对不起,如果这到处都是,但我似乎找不到办法。如果您可以推荐最直接的方法来从具有多个连接的查询中加载我的可排序网格,我将不胜感激。
我的控制器代码:
public ActionResult GridData(string sidx, string sord, int page, int rows)
{
EquipTrak eqt = new EquipTrak();
var equipment = eqt.GetGridEquipment(sidx, sord);
var dataJson = new
{
total = 10000,
page = 1,
records = 10000,
rows = (from e in equipment
select new
{
equip_id = e.equip_id,
cell = new string[] {
e.equip_id,
e.equipType,
e.makeType,
String.Format("{0:MM/dd/yyyy}", e.serv_due_dt)
}
}).ToArray()
};
return Json(dataJson);
}
}
我的课程代码(不完整):
namespace ULS_Site.Models
{
public class EquipTrak
{
uls_dbDataContext ulsDB = new uls_dbDataContext();
public IQueryable<equipmentCls> GetGridEquipment(string sidx, string sord)
{
try
{
return