中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久

ASP.NET MVC4 HtmlHelper擴展類,實現(xiàn)分頁功能
來源:易賢網(wǎng) 閱讀:1580 次 日期:2016-08-10 15:40:20
溫馨提示:易賢網(wǎng)小編為您整理了“ASP.NET MVC4 HtmlHelper擴展類,實現(xiàn)分頁功能”,方便廣大網(wǎng)友查閱!

本文主要做了一個HtmHelper類的分頁擴展函數(shù),方便在視圖中調(diào)用,有需要的朋友可以參考一下,希望對大家有所幫助。

1、擴展HtmlHelper類方法ShowPageNavigate

public static HtmlString ShowPageNavigate(this HtmlHelper htmlHelper, int currentPage, int pageSize, int totalCount)

{

  var redirectTo = htmlHelper.ViewContext.RequestContext.HttpContext.Request.Url.AbsolutePath;

  pageSize = pageSize == 0 ? 3 : pageSize;

  var totalPages = Math.Max((totalCount + pageSize - 1) / pageSize, 1); //總頁數(shù)

  var output = new StringBuilder();

  if (totalPages > 1)

  {

    output.AppendFormat("<a class='pageLink' href='{0}?pageIndex=1&pageSize={1}'>首頁</a> ", redirectTo, pageSize);

    if (currentPage > 1)

    {//處理上一頁的連接

      output.AppendFormat("<a class='pageLink' href='{0}?pageIndex={1}&pageSize={2}'>上一頁</a> ", redirectTo, currentPage - 1, pageSize);

    }

    output.Append(" ");

    int currint = 5;

    for (int i = 0; i <= 10; i++)

    {//一共最多顯示10個頁碼,前面5個,后面5個

      if ((currentPage + i - currint) >= 1 && (currentPage + i - currint) <= totalPages)

      {

        if (currint == i)

        {//當前頁處理              

          output.AppendFormat("<a class='cpb' href='{0}?pageIndex={1}&pageSize={2}'>{3}</a> ", redirectTo, currentPage, pageSize, currentPage);

        }

        else

        {//一般頁處理

          output.AppendFormat("<a class='pageLink' href='{0}?pageIndex={1}&pageSize={2}'>{3}</a> ", redirectTo, currentPage + i - currint, pageSize, currentPage + i - currint);

        }

      }

      output.Append(" ");

    }

    if (currentPage < totalPages)

    {//處理下一頁的鏈接

      output.AppendFormat("<a class='pageLink' href='{0}?pageIndex={1}&pageSize={2}'>下一頁</a> ", redirectTo, currentPage + 1, pageSize);

    }

    output.Append(" ");

    if (currentPage != totalPages)

    {

      output.AppendFormat("<a class='pageLink' href='{0}?pageIndex={1}&pageSize={2}'>末頁</a> ", redirectTo, totalPages, pageSize);

    }

    output.Append(" ");

  }

  output.AppendFormat("<label>第{0}頁 / 共{1}頁</label>", currentPage, totalPages);//這個統(tǒng)計加不加都行

  return new HtmlString(output.ToString());

}

2、添加公共類PagerInfo,PageQuery

public class PagerInfo

{

  public int RecordCount { get; set; }

  public int CurrentPageIndex { get; set; }

  public int PageSize { get; set; }

}

public class PagerQuery<TPager, TEntityList>

{

  public PagerQuery(TPager pager, TEntityList entityList)

  {

    this.Pager = pager;

    this.EntityList = entityList;

  }

  public TPager Pager { get; set; }

  public TEntityList EntityList { get; set; }

}

3、然后在Controller里面添加Action

public ActionResult Index(int? pageSize, int? pageIndex)

{

  int pageIndex1 = pageIndex ?? 1;

  int pageSize1 = pageSize ?? 5;

  int count = 0;

  //從數(shù)據(jù)庫在取得數(shù)據(jù),并返回總記錄數(shù)

  var temp = newsSer.LoadPageEntities(c => true, c => c.id, false, pageSize1, pageIndex1, out count);

  PagerInfo pager = new PagerInfo();

  pager.CurrentPageIndex = pageIndex1;

  pager.PageSize = pageSize1;

  pager.RecordCount = count;

  PagerQuery<PagerInfo, IQueryable<news>> query = new PagerQuery<PagerInfo, IQueryable<news>>(pager, temp);

  return View(query);

}

4、View里的部分代碼

<tbody>

  @foreach (var item in Model.EntityList)

  {

    <tr>

      <td class="checkBox">

        <input name="ids[]" type="checkbox" value="" />

      </td>

      <td>

        @item.author

      </td>

      <td>

        @item.title

      </td>

      <td>

        @item.ctime

      </td>

      <td>

        @Html.ActionLink("編輯", "Edit", new { id = item.id }) |

        @Html.ActionLink("刪除", "Delete", new { id = item.id })

      </td>

    </tr>

  }

  @*分頁*@

  <tr class="">

    <td colspan="5" align="center" class="paginator">

      <span>

        @Html.ShowPageNavigate(Model.Pager.CurrentPageIndex, Model.Pager.PageSize, Model.Pager.RecordCount)

      </span>

    </td>

  </tr>

</tbody>

5、添加一些樣式

.paginator

{

  font: 12px Arial, Helvetica, sans-serif;

  padding: 10px 20px 10px 0;

  margin: 0px auto;

}

.paginator a

{

  border: solid 1px #ccc;

  color: #0063dc;

  cursor: pointer;

  text-decoration: none;

}

.paginator a:visited

{

  padding: 1px 6px;

  border: solid 1px #ddd;

  background: #fff;

  text-decoration: none;

}

.paginator .cpb

{

  border: 1px solid #F50;

  font-weight: 700;

  color: #F50;

  background-color: #ffeee5;

}

.paginator a:hover

{

  border: solid 1px #F50;

  color: #f60;

  text-decoration: none;

}

.paginator a, .paginator a:visited, .paginator .cpb, .paginator a:hover

{

  float: left;

  height: 16px;

  line-height: 16px;

  min-width: 10px;

  _width: 10px;

  margin-right: 5px;

  text-align: center;

  white-space: nowrap;

  font-size: 12px;

  font-family: Arial,SimSun;

  padding: 0 3px;

}

.paginator label

{

  display:block;  

  float:left;  

}

6.總結

這個案例簡單實現(xiàn)了在MVC中快速分頁,其實很多開源的項目中都有相關的HtmlHepler的擴展函數(shù),其中也不乏帶有分頁的擴展,例如著名的開源商城項目nopCommerce,其中有就一個HtmlExtensions.cs擴展類,里面就有關于分頁的擴展,人家寫的可是相當專業(yè)哦,有興趣的可以研究一下。

更多信息請查看網(wǎng)絡編程
易賢網(wǎng)手機網(wǎng)站地址:ASP.NET MVC4 HtmlHelper擴展類,實現(xiàn)分頁功能

2026上岸·考公考編培訓報班

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網(wǎng)
中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久
亚洲综合另类| 一区二区三区久久精品| 欧美激情一区三区| 欧美电影打屁股sp| 欧美日韩二区三区| 国内揄拍国内精品久久| 99国产成+人+综合+亚洲欧美| 亚洲一级黄色| 欧美电影电视剧在线观看| 国产欧美精品一区二区色综合| 影音先锋另类| 久久精品成人一区二区三区蜜臀| 欧美精品久久一区| 原创国产精品91| 欧美中文字幕| 国产精品女主播在线观看| 夜夜嗨av一区二区三区四季av| 午夜在线观看欧美| 欧美日韩一区二区三区在线看 | 国产一区二区中文字幕免费看| 亚洲美女少妇无套啪啪呻吟| 久久久久欧美| 国产伦精品一区二区三区免费迷| 亚洲精品免费网站| 老鸭窝毛片一区二区三区| 国产精品扒开腿爽爽爽视频| 亚洲人体大胆视频| 欧美精品日韩| 亚洲第一精品夜夜躁人人躁| 亚洲欧美一级二级三级| 欧美日韩在线视频一区| 亚洲国产精彩中文乱码av在线播放| 久久久久高清| 精品二区视频| 欧美激情精品久久久久久变态| 亚洲日本欧美在线| 欧美激情中文字幕乱码免费| 亚洲国产精品999| 蜜臀a∨国产成人精品| 一区二区三区在线高清| 久久久综合激的五月天| 精品成人a区在线观看| 久久久久久久久久久一区 | 欧美一区二区三区视频在线观看 | 亚洲巨乳在线| 欧美精品一区二区三区一线天视频| 伊人春色精品| 欧美电影在线免费观看网站| 夜夜嗨av一区二区三区网站四季av | 欧美片在线观看| 日韩午夜中文字幕| 国产精品自在线| 久久精品一区| 亚洲欧洲日本mm| 国产精品福利影院| 久久精品中文字幕一区| 亚洲第一区在线观看| 欧美日韩www| 久久成人免费网| 亚洲人成免费| 欧美日韩亚洲网| 欧美一级精品大片| 99riav久久精品riav| 国产精品爽黄69| 欧美成年人视频网站| 99热这里只有精品8| 国产精品亚洲成人| 欧美高清视频在线| 久久国产一区二区三区| 夜夜嗨av一区二区三区| 激情六月婷婷久久| 欧美亚州一区二区三区 | 亚洲午夜激情在线| 亚洲国产午夜| 国产手机视频一区二区| 欧美丝袜第一区| 免费黄网站欧美| 久久精品麻豆| 亚洲免费小视频| 日韩天堂在线观看| 91久久精品日日躁夜夜躁欧美| 国产精品色一区二区三区| 欧美精品成人一区二区在线观看 | 国产精品二区二区三区| 欧美不卡三区| 欧美自拍偷拍午夜视频| 亚洲午夜一区二区三区| 亚洲精品国产精品国自产观看浪潮| 国内精品久久久久影院薰衣草| 国产精品理论片在线观看| 美女图片一区二区| 老司机午夜精品视频在线观看| 欧美一区二区视频97| 亚洲视频在线观看网站| 亚洲三级视频| 亚洲高清免费| 亚洲国产日韩在线一区模特| 在线日本成人| 在线日本高清免费不卡| 尤妮丝一区二区裸体视频| 国产亚洲精品自拍| 国产日韩视频| 国模大胆一区二区三区| 国产伦精品免费视频 | 亚洲欧美日韩国产一区二区三区 | 美女爽到呻吟久久久久| 久久久久九九九九| 久久久久久夜精品精品免费| 香蕉成人伊视频在线观看| 一区二区欧美日韩视频| 在线综合视频| 亚洲亚洲精品在线观看| 午夜欧美大片免费观看| 午夜精品成人在线| 亚洲宅男天堂在线观看无病毒| 亚洲午夜精品视频| 久久av二区| 欧美国产一区视频在线观看| 欧美日韩在线看| 国产日产高清欧美一区二区三区| 国产乱码精品一区二区三区不卡| 国产亚洲va综合人人澡精品| 国产亚洲成av人片在线观看桃| 国内自拍一区| 91久久精品国产91久久| 99国产精品私拍| 一区二区三区精密机械公司| 一本色道久久综合亚洲精品小说| 亚洲精品一区二区三区四区高清| 国产精品99久久99久久久二8 | 国产精品日韩久久久久| 国产婷婷精品| 亚洲高清中文字幕| 一区二区成人精品| 亚洲欧美激情视频| 久久免费精品视频| 欧美日韩视频一区二区| 国产精品初高中精品久久| 黄色av成人| 亚洲影院在线观看| 久久精品综合一区| 蜜臀99久久精品久久久久久软件| 欧美黄在线观看| 国产日韩亚洲| 一本色道久久88综合亚洲精品ⅰ | 国产欧美一区二区精品婷婷| 伊人精品成人久久综合软件| 一区二区三区 在线观看视频| 性亚洲最疯狂xxxx高清| 欧美激情第3页| 国产日本欧美在线观看| 亚洲精品乱码视频| 久久精品国产一区二区三区免费看| 欧美私人啪啪vps| 激情综合久久| 午夜亚洲福利| 国产精品久久久久久av福利软件| 91久久久亚洲精品| 欧美 日韩 国产一区二区在线视频| 国产精品三级久久久久久电影| 亚洲欧洲在线观看| 巨乳诱惑日韩免费av| 国产欧美一区二区三区另类精品| 亚洲精品日韩一| 欧美精品一线| 亚洲国产一区二区三区在线播 | 午夜精品久久久| 国产精品电影在线观看| 99re热精品| 欧美日韩一区三区| 一区二区电影免费在线观看| 欧美日韩亚洲网| 亚洲婷婷国产精品电影人久久| 欧美日韩免费高清一区色橹橹| 亚洲精品国偷自产在线99热| 欧美电影免费观看高清完整版| 亚洲国产欧美久久| 欧美日韩国产不卡在线看| 日韩网站在线观看| 国产精品va在线播放| 亚洲欧美春色| 国产一区二区av| 久久视频这里只有精品| 永久域名在线精品| 欧美久久电影| 亚洲午夜精品福利| 国产一区视频在线观看免费| 另类欧美日韩国产在线| 亚洲人在线视频| 国产精品福利影院| 久久这里只精品最新地址| 亚洲区欧美区| 欧美精品一区二区三区在线看午夜| 日韩天堂在线观看| 欧美视频在线观看| 欧美在线播放视频| 国内久久视频| 欧美刺激性大交免费视频| 亚洲狼人综合| 国产精品国产精品国产专区不蜜|