asp.net 中使用 pagedlist 分頁並具有查詢功能的實現方法

來源:互聯網
上載者:User

標籤:stripe   mvc   user   str   實現   控制器   姓名   render   今天   

 用pagedlist在項目中做分頁已N次了,今天再次用執行個體來實現一個帶查詢功能的分頁例子。

1、在view代碼:

<div class="search">    <form method="post" action="/user/index">        <input placeholder="真實姓名" name="realname" /><button class="btnSearch">查詢</button>    </form></div><table class="table table-striped">    <tr>        <th>            登入名稱        </th>        <th>            真實姓名        </th>        <th>學校</th>        <th>年級</th>        <th>班級</th>        <th>操作</th>    </tr>    @foreach (var item in Model.list)    {        <tr data-id="@item.id">            <td>                @Html.DisplayFor(modelItem => item.name)            </td>            <td>                @item.realname            </td>            <td>                @item.school            </td>            <td>                @item.stugrade            </td>            <td>@item.stuclass</td>            <td>                <a href="javascript:;" class="btnResetPwd">重設密碼</a> |                <a href="javascript:;" class="btnDel">刪除</a>            </td>        </tr>    }</table>@if (Model != null){    <div class="pagedList" style="margin:0 auto;text-align:center">        @Html.PagedListPager(Model.list, page => Url.Action("index", new { page,realname= Model.curUser.realname }), PagedListRenderOptions.Classic)    </div>}

上面注意在查詢部分的from表單, name屬性中指明後台接收的變數。最下方的是分頁代碼,注意反白部分是在分頁時傳值的變數名realname= Model.curUser.realname, Model.curUser是後台指定的使用者User類的目前使用者,這個可以在第二步中具體查看,realname與表單中的一致,保證後台能接收到。

2、MVC控制器

        private OnlineTestEntities db = new OnlineTestEntities();        private const int pagesize = 15;               public ActionResult Index(User userinfo, int page = 1)        {            var list = db.Users.ToList();            if (!string.IsNullOrEmpty(userinfo.realname))            {                list = list.Where(x => x.realname.Contains(userinfo.realname)).ToList();            }            UserPagedList mylist = new UserPagedList()            {                list = list.OrderByDescending(x => x.id).ToPagedList<User>(page, pagesize),                curUser = userinfo            };            return View(mylist);        }    

注意紅色代碼, User中有一屬性正是第一步中的realname屬性,這是查詢條件。UserPagedList  類是把分頁集合封裝的一個類,是自己寫的,如下 :

3、 UserPagedList類:

public class UserPagedList    {        public User curUser { get; set; }        public PagedList.IPagedList<User> list { get; set; }    }

好了,實現完畢。這種實現現在是我經常用的方法。

asp.net 中使用 pagedlist 分頁並具有查詢功能的實現方法

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.