1

我正在处理 asp.net 项目,我想制作一个类似这样的页面:

在此处输入图像描述

我想将上一张图片中的图像放在数据模板之类的东西中,并且我想以这种方式显示页码....有没有好的文章或教程可以帮助我执行此操作...因为我我是这个领域的初学者......

4

2 回答 2

6

假设视图模型:

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 上找到的示例项目

于 2013-10-09T10:48:12.363 回答
1

是的,你会在很棒的书 Pro ASP.NET MVC 4 第 101 页(剃刀)和第 183 页(分页)中找到它。是必读的书!

http://www.amazon.com/Pro-ASP-NET-MVC-Adam-Freeman/dp/1430242361/ref=sr_1_1?ie=UTF8&qid=1381864006&sr=8-1&keywords=asp.net+mvc

于 2013-10-15T19:10:08.513 回答