我在排序JqGrid中的條目時遇到了問題。 Orderby似乎不起作用。我在代碼中設置了斷點,我發現,orderby不會改變元素的順序。任何想法可能是錯的?使用LINQ to MySQL(DbLinq)和動態LINQ排序的JqGrid - Orderby不起作用
我正在使用LINQ to SQL與MySQL(DbLinq項目)。
我的動作代碼:
public ActionResult All(string sidx, string sord, int page, int rows)
{
var tickets = ZTRepository.GetAllTickets().OrderBy(sidx + " " + sord).ToList();
var rowdata = (
from ticket in tickets
select new {
i = ticket.ID,
cell = new String[] {
ticket.ID.ToString(), ticket.Hardware, ticket.Issue, ticket.IssueDetails, ticket.RequestedBy, ticket.AssignedTo, ticket.Priority.ToString(), ticket.State
}
}).ToArray();
var jsonData = new
{
total = 1, // we'll implement later
page = page,
records = tickets.Count(),
rows = rowdata
};
return Json(jsonData, JsonRequestBehavior.AllowGet);
}
什麼是「sidx」和「sord」?我假設他們是一個列名稱,並且「asc」或「desc」?另外,ZTRepository.GetAllTickets()返回什麼? – PatrickSteele 2010-11-02 15:20:35
sidx和sord--如你所設想的那樣; GetAllTickets()返回IQueryable –
mlusiak
2010-11-02 15:41:59
我修復了代碼中的一些錯誤(請參閱我的答案)。我從我的應用程序粘貼了一個代碼示例,並沒有將所有變量都替換爲青年。我希望現在我做了所有必要的更改。此外,不要忘記在舊代碼中使用'id = ticket.ID'而不是'i = ticket.ID'(請參閱下面的代碼)。 – Oleg 2010-11-02 17:09:49