c# 后台拼接分页Html
2021-07-09 04:09
标签:fir public ges turn app color 分页 ring 计算 c# 后台拼接分页Html 标签:fir public ges turn app color 分页 ring 计算 原文地址:https://www.cnblogs.com/yuanzijian-ruiec/p/9720873.html public static string ReplaceStr(string originalStr, string oldStr, string newStr)
{
if (string.IsNullOrEmpty(oldStr))
{
return "";
}
return originalStr.Replace(oldStr, newStr);
}
public static string OutPageList(int pageSize, int pageIndex, int totalCount, string linkUrl, int centSize)
{
//计算页数
if (totalCount 1 || pageSize 1)
{
return "";
}
int pageCount = totalCount / pageSize;
if (pageCount 1)
{
return "";
}
if (totalCount % pageSize > 0)
{
pageCount += 1;
}
if (pageCount 1)
{
return "";
}
StringBuilder pageStr = new StringBuilder();
string pageId = "__id__";
string firstBtn = "" + ReplaceStr(linkUrl, pageId, (pageIndex - 1).ToString()) + "\">?上一页";
string lastBtn = "" + ReplaceStr(linkUrl, pageId, (pageIndex + 1).ToString()) + "\">下一页?";
string firstStr = "" + ReplaceStr(linkUrl, pageId, "1") + "\">1";
string lastStr = "" + ReplaceStr(linkUrl, pageId, pageCount.ToString()) + "\">" + pageCount.ToString() + "";
if (pageIndex 1)
{
firstBtn = "?上一页";
}
if (pageIndex >= pageCount)
{
lastBtn = "下一页?";
}
if (pageIndex == 1)
{
firstStr = "1";
}
if (pageIndex == pageCount)
{
lastStr = "" + pageCount.ToString() + "";
}
int firstNum = pageIndex - (centSize / 2); //中间开始的页码
if (pageIndex centSize)
firstNum = 2;
int lastNum = pageIndex + centSize - ((centSize / 2) + 1); //中间结束的页码
if (lastNum >= pageCount)
lastNum = pageCount - 1;
pageStr.Append("共" + totalCount + "记录");
pageStr.Append(firstBtn + firstStr);
if (pageIndex >= centSize)
{
pageStr.Append("...\n");
}
for (int i = firstNum; i )
{
if (i == pageIndex)
{
pageStr.Append("" + i + "");
}
else
{
pageStr.Append("" + ReplaceStr(linkUrl, pageId, i.ToString()) + "\">" + i + "");
}
}
if (pageCount - pageIndex > centSize - ((centSize / 2)))
{
pageStr.Append("...");
}
pageStr.Append(lastStr + lastBtn);
return pageStr.ToString();
}
下一篇:C#异步编程基础入门总结