前台点击排序,向后台发送,排序的字段,排序类型,
怎么用EF动态查询
这是原来的,要加上动态排序
list = list.OrderBy(a=>a.ID).Skip((Convert.ToInt32(page) - 1) * Convert.ToInt32(rows)).Take(Convert.ToInt32(rows)).ToList();
public JsonResult GetSelect(int? page, int? rows, string sort, string order)
{
page = page == null ? 1 : page;
rows = rows == null ? 1 : rows;
sort = sort == null ? "ID" : sort;
order = order == null ? "asc" : order;
List<Tbl_A> list=db.Tbl_A.select(a=>a).ToList();
int listCount = list.Count();
list = list.OrderBy(a=>a.ID).Skip((Convert.ToInt32(page) - 1) * Convert.ToInt32(rows)).Take(Convert.ToInt32(rows)).ToList();
var json = new
{
total = listCount,
rows = list.Select(a => a)
};
return Json(json, JsonRequestBehavior.AllowGet);
}
这个示例展示如何排序datagrid通过点击列表头.
查看 Demo
在datagrid的所有columns 可以通过点击列表头排序,你可以定义哪行可以排序,默认的列是不能排序的除非你设置sortable 属性为true
创建an DataGrid
GetSelect(int? page, int? rows, string sort, string order)
{
page = page == null ? 1 : page;
rows = rows == null ? 1 : rows;
sort = sort == null ? "ID" : sort;
order = order == null ? "asc" : order;
List list=db.Tbl_A.select(a=>a).ToList();
int listCount = list.Count();
list = list.OrderBy(a=>a.ID).Skip((Convert.ToInt32(page) - 1) * Convert.ToInt32(rows)).Take(Convert.ToInt32(rows)).ToList();
var json = new
{
total = listCount,
rows = list.Select(a => a)
};