public DataTablesResult GetUsersGridModel(DataTablesParam dataTableParam)
{
Contract.Assert(dataTableParam != null);
Contract.Assert(dataTableParam.iDisplayLength != 0);
var pageIndex = dataTableParam.iDisplayStart / dataTableParam.iDisplayLength;
var queryData = new UserAll { PageIndex = pageIndex, PageSize = dataTableParam.iDisplayLength };
var query = this.Manager.FindAll(queryData);
var count = this.Manager.Count(queryData);
var list = (from u in query
select new[]
{
u.Id.ToString(CultureInfo.InvariantCulture),
u.Name,
u.Email,
u.UserPasswordCredential != null ? u.UserPasswordCredential.Login : string.Empty
}).OfType<object>().ToArray();
var result = new DataTablesResult
{
JsonRequestBehavior = JsonRequestBehavior.DenyGet,
Data = new DataTablesData
{
iTotalRecords = dataTableParam.iDisplayLength,
iTotalDisplayRecords = count,
sEcho = dataTableParam.sEcho,
aaData = list
}
};
return result;
}