我正在处理 asp.net 项目,我想制作一个类似这样的页面:
我想将上一张图片中的图像放在数据模板之类的东西中,并且我想以这种方式显示页码....有没有好的文章或教程可以帮助我执行此操作...因为我我是这个领域的初学者......
假设视图模型:
public class ProjectVM
{
public String ImageUrl { get; set; }
public String ProjectName { get; set; }
}
public class IndexVM
{
// nuget> Install-Package PagedList
public IPagedList<ProjectVM> projects { get; set; }
}
然后你的控制器:
public class HomeController : Controller
{
public ActionResult Index(Int32 page = 1)
{
IndexVM model = new IndexVM
{
Projects = projectService.GetProjects().ToPagedList(page, 6)
};
return View(model);
}
}
那么你的看法:
~/Views/Shared/DisplayTemplates/ProjectVM.cshtml
@model ProjectVM
@* Or however you display it... *@
<div class="span4">
<img src="@Model.ImageUrl" />
<p>@Model.Name</p>
</div>
~/Views/Home/Index.cshtml
@mode IndexVM
@* Or however you display it... *@
<div class="content">
<section>
<div class="title">
<h1>All projects</h1>
<div class="paging">
@Html.PagedListPager((IPagedList)Model.Projects, page => Url.Action("Index", new { page }))
</div>
@Html.DisplayFor(x => x.Projects)
</div>
在 GitHub 上找到的示例项目
是的,你会在很棒的书 Pro ASP.NET MVC 4 第 101 页(剃刀)和第 183 页(分页)中找到它。是必读的书!