我正在使用MVCGrid.Net,并且正在尝试向网格中添加分页,以下是我的代码:
GridDefinition<DepositLog> def = new GridDefinition<DepositLog>();
GridColumn<DepositLog> ID = new GridColumn<DepositLog>();
ID.ColumnName = "ID";
ID.HeaderText = "ID";
ID.HtmlEncode = false;
ID.ValueTemplate = "<input type='text' name='ID' value='{Value}' class='form-control' />";
ID.ValueExpression = (i, c) => i.id.ToString();
def.AddColumn(ID);
GridColumn<DepositLog> PayTo = new GridColumn<DepositLog>();
PayTo.ColumnName = "PayTo";
PayTo.HeaderText = "PayTo";
PayTo.HtmlEncode = false;
PayTo.ValueTemplate = "<input type='text' name='PayTo' value='{Value}' class='form-control' />";
PayTo.ValueExpression = (i, c) => i.PayTo.ToString();
def.AddColumn(PayTo);
GridColumn<DepositLog> Category = new GridColumn<DepositLog>();
Category.ColumnName = "Category";
Category.HeaderText = "Category";
Category.HtmlEncode = false;
Category.ValueTemplate = "<input type='text' name='Category' value='{Value}' class='form-control' />";
Category.ValueExpression = (i, c) => i.Category.ToString();
def.AddColumn(Category);
def.Paging = true;
def.ItemsPerPage = 10;
def.RetrieveData = (options) =>
{
return new QueryResult<DepositLog>()
{
Items = _modelItems,
TotalRecords = 0
};
};
try
{
MVCGridDefinitionTable.GetDefinition<DepositLog>("DepositLogGrid");
}
catch (Exception e)
{
MVCGridDefinitionTable.Add("DepositLogGrid", def);
}我在这里遵循了这个演示:http://mvcgrid.net/demo/paging
我的代码有点不同,因为我有多个控制器,每个控制器都有一个网格,所以我在控制器中定义了网格,但是yea...my分页没有出现,所有的结果都来自up...what我做错了吗?
发布于 2019-11-16 02:51:23
解决了它:
def.Paging = true;
def.ItemsPerPage = 25;
def.MaxItemsPerPage = 25;
def.RetrieveData = (context) =>
{
var options = context.QueryOptions;
var result = new QueryResult<DepositLog>();
var query = _modelItems.AsQueryable();
result.TotalRecords = query.Count();
if (options.GetLimitOffset().HasValue)
{
query = query.Skip(options.GetLimitOffset().Value).Take(options.GetLimitRowcount().Value);
}
result.Items = query.ToList();
return result;
};https://stackoverflow.com/questions/58882786
复制相似问题