Загрузка jqgrid из запроса с несколькими объединениями - PullRequest
0 голосов
/ 13 сентября 2009

Я пытаюсь загрузить сортируемый jqgrid 3.5 из запроса с несколькими объединениями, и у меня возникли большие трудности, так как я новичок в работе с Linq и jqgrid. Чтобы разрешить сортировку, я сначала пытался загрузить ее с помощью динамического SQL.

Поскольку я извлекаю столбцы из нескольких таблиц, я предполагаю, что мой возврат будет объектом класса, который я буду заполнять (или это будет таблица). Как вернуть объект пользовательского класса IQueryable при использовании динамического SQL с несколькими предложениями .JOIN. Если это невозможно, как вернуть данные 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

1 Ответ

0 голосов
/ 15 сентября 2009

Не уверен, является ли это лучшим или худшим решением, но я использовал представления SQL Server для обработки всех необходимых соединений. Затем я мог бы использовать .Orderby и .Where против представления, которое было в моем контексте данных.

...