前言:
此时朋友们对“net20list分页”都比较关切,你们都需要学习一些“net20list分页”的相关文章。那么小编在网摘上汇集了一些对于“net20list分页””的相关文章,希望朋友们能喜欢,兄弟们一起来学习一下吧!在NET+EF+MVC接口开发的时候,如何 输出带 分页的数据列表页,以下是完整方法,可以在开发时借鉴思路。
[HttpGet]
public HttpResponseMessage Get_VideoPageList(decimal ParentID, decimal ParentloginID, decimal NewEnrolmentID, Nullable<int> sort = 0, Nullable<decimal> knowledgetypeID = 0, Nullable<decimal> knowledgeageID = 0, decimal KindergartenID = 0, decimal TrialID = 0, int pageIndex = 1, int pageSize = 10, string Token = null)
{
HttpResponseMessage result = null;
var ReturnStr = "{\"result\":\"" + (int)KeyEnum.AppReturn.失败 + "\",\"msg\":\"参数有误\",\"data\":{}}";
if (TrialID <= 0)
{
ReturnStr = "{\"result\":\"" + (int)KeyEnum.AppReturn.失败 + "\",\"msg\":\"总部试用ID有误\",\"data\":{}}";
result = new HttpResponseMessage { Content = new StringContent(ReturnStr, Encoding.GetEncoding("UTF-8"), "application/json") };
return result;
}
else if (KindergartenID <= 0)
{
ReturnStr = "{\"result\":\"" + (int)KeyEnum.AppReturn.失败 + "\",\"msg\":\"ID有误\",\"data\":{}}";
result = new HttpResponseMessage { Content = new StringContent(ReturnStr, Encoding.GetEncoding("UTF-8"), "application/json") };
return result;
}
else if (ParentID <= 0)
{
ReturnStr = "{\"result\":\"" + (int)KeyEnum.AppReturn.失败 + "\",\"msg\":\"一级分类ID有误\",\"data\":{}}";
result = new HttpResponseMessage { Content = new StringContent(ReturnStr, Encoding.GetEncoding("UTF-8"), "application/json") };
return result;
}
else if (ParentloginID <= 0)
{
ReturnStr = "{\"result\":\"" + (int)KeyEnum.AppReturn.失败 + "\",\"msg\":\"家长ID有误\",\"data\":{}}";
result = new HttpResponseMessage { Content = new StringContent(ReturnStr, Encoding.GetEncoding("UTF-8"), "application/json") };
return result;
}
else if (NewEnrolmentID <= 0)
{
ReturnStr = "{\"result\":\"" + (int)KeyEnum.AppReturn.失败 + "\",\"msg\":\"宝贝ID有误\",\"data\":{}}";
result = new HttpResponseMessage { Content = new StringContent(ReturnStr, Encoding.GetEncoding("UTF-8"), "application/json") };
return result;
}
else
{
#region 验证token
if (!string.IsNullOrEmpty(Token))
{
int t = new WisdomStars.Bll.Api.Common().PUB_VerificationToken(Token);
if (t <= 0)
{
ReturnStr = "{\"result\":\"" + (int)KeyEnum.AppReturn.失败 + "\",\"msg\":\"登录失效\",\"data\":{}}";
result = new HttpResponseMessage { Content = new StringContent(ReturnStr, Encoding.GetEncoding("UTF-8"), "application/json") };
return result;
}
}
else
{
ReturnStr = "{\"result\":\"" + (int)KeyEnum.AppReturn.失败 + "\",\"msg\":\"token不能为空\",\"data\":{}}";
result = new HttpResponseMessage { Content = new StringContent(ReturnStr, Encoding.GetEncoding("UTF-8"), "application/json") };
return result;
}
#endregion 验证token
ef.Configuration.ProxyCreationEnabled = false;
Expression<Func<knowledge, bool>> where = PredicateExtensionses.True<knowledge>();
where = where.And(a => a.isdeleted == 0 && a.knowledgetype.ParentID == ParentID);
if (knowledgetypeID > 0)
{
where = where.And(a => a.knowledgetypeID == knowledgetypeID);
}
if (knowledgeageID > 0)
{
where = where.And(a => a.knowledgeageID == knowledgeageID);
}
IPagedList<hx_knowledge> list;
if (sort == 1)
{
//按访问量倒序
list = ef.hx_knowledge.Where(where).OrderByDescending(p => p.hit).AsNoTracking().ToPagedList(pageIndex, pageSize);
}
else
{
//按日期倒序
list = ef.knowledge.Where(where).OrderByDescending(p => p.createtime).AsNoTracking().ToPagedList(pageIndex, pageSize);
}
int TotalItemCount = list.TotalItemCount; //总数量
int TotalPageCount = 0;
if (TotalItemCount % pageSize == 0)
{
TotalPageCount = TotalItemCount / pageSize; //总页数
}
else
{
TotalPageCount = TotalItemCount / pageSize + 1; //总页数
}
List<Api_knowledge> knowledgelist = new List<Api_knowledge>();
if (list != null && list.Count() > 0)
{
foreach (var item in list)
{
Api_knowledge info = new Api_knowledge();
info.knowledgeID = item.knowledgeID;
info.knowledgename = item.knowledgename;
if (!string.IsNullOrEmpty(item.descript))
{
info.descript = item.descript.ToString();
}
else
{
info.descript = "";
}
if (!string.IsNullOrEmpty(item.photo))
{
info.photo = System.Web.Configuration.WebConfigurationManager.AppSettings["ImagesBrowseServer"].ToString() + item.photo;
}
else
{
info.photo = "";
}
info.hit = item.hit;
knowledgelist.Add(info);
}
ReturnStr = "{\"result\":\"" + (int)KeyEnum.AppReturn.成功 + "\",\"msg\":\"获取成功\",\"data\":{\"TotalPageCount\":" + TotalPageCount + ",\"TotalItemCount\":" + TotalItemCount + ",\"pageIndex\":\"" + pageIndex + "\",\"pageSize\":\"" + pageSize + "\",\"list\":" + knowledgelist.ToEnJsonString() + "}}";
}
else
{
ReturnStr = "{\"result\":\"" + (int)KeyEnum.AppReturn.无数据 + "\",\"msg\":\"无数据\",\"data\":{}}";
}
}
result = new HttpResponseMessage { Content = new StringContent(ReturnStr, Encoding.GetEncoding("UTF-8"), "application/json") };
return result;
}
以上是NET+EF+MVC开发接口中常用输出分页的数据列表方法,欢迎交流!
标签: #net20list分页