在控制器中创建一个动作结果来获取数据,并将其存储在一个列表中。
public ActionResult Index(int? page)
{
int pageSize = 10;
int pageNumber = (page ?? 1);
List data = new List();
//添加数据
for(int i=1;i<=100;i++)
{
data.Add("Item " + i.ToString());
}
return View(data.ToPagedList(pageNumber, pageSize));
}
在视图中添加一个下拉框和一个提交按钮,以便用户可以选择一个选项并提交筛选结果。
@using PagedList.Mvc;
@using PagedList;
@model IPagedList
ASP.NET MVC下拉框筛选数据分页
@using (Html.BeginForm("Index", "Home", FormMethod.Get))
{
@Html.DropDownList("SearchOption", new SelectList(new[] { "", "Item 1", "Item 2", "Item 3" }))
}
Item
@foreach (var item in Model)
{
@item
}
Page @(Model.PageCount < Model.PageNumber ? 0 : Model.PageNumber) of @Model.PageCount
@Html.PagedListPager(Model, page => Url.Action("Index", new { page, sortOrder = ViewBag.CurrentSort, currentFilter = ViewBag.CurrentFilter }))
在控制器中添加一个参数并根据所选的选项筛选数据。
public ActionResult Index(int? page, string SearchOption)
{
int pageSize = 10;
int pageNumber = (page ?? 1);
List data = new List();
//添加数据
for(int i=1;i<=100;i++)
{
data.Add("Item "