在C#中,可以通过以下步骤实现控制器的分页功能:
public ActionResult Index(int? page)
{
int pageNumber = page ?? 1; // 当page为空时,默认为第一页
int pageSize = 10; // 每页显示的数据条数
var data = GetData(); // 获取数据源
var paginatedData = data.Skip((pageNumber - 1) * pageSize).Take(pageSize).ToList(); // 分页查询数据
return View(paginatedData);
}
@model List<YourModel>
@foreach (var item in Model)
{
// 显示数据
}
@{
int totalPages = (int)Math.Ceiling((double)data.Count() / pageSize);
}
@if (totalPages > 1)
{
<div>
@for (int i = 1; i <= totalPages; i++)
{
<a href="@Url.Action("Index", new { page = i })">@i</a>
}
</div>
}
在上面的示例中,GetData
方法是用于获取数据源的自定义方法,YourModel
是你的数据模型类。通过获取数据源后,根据当前页码和每页显示的数据条数进行分页查询,并在视图中显示分页导航。
希望这个简单的示例对你有所帮助。如果有任何疑问或者需要进一步的解释,请随时告诉我。