如何在主页上呈现两个分页列表?
我愿意做它需要做的事情 - 如果这意味着定制我的代码以适应解决方案或定制现有解决方案以适应我的代码。
我已经使用部分视图成功地将一个分页列表呈现到主页。
看看我的代码:视图..首页> 索引.cshtml
@foreach (var m in Model.First)
{
Html.RenderPartial("FirstSummary", m);
}
<div class="pager">
@Html.PageLinks(Model.PagingInfo, x => Url.Action("Index", new { page = x }))
</div>
视图..共享> FirstSummary.cshtml
@model MovinMyStuff.Domain.Entities.First
@{
if (@Model.IsActive)
{
<div class="first-list-item">
<ul>
<li>
<span class="first-name">
@Model.Property.ToString()
@Model.Property.ToString()
@Model.Property.ToString() -
@Model.Property.ToString()
@Model.Property.ToString()
@Model.Property.ToString()
</span>
</li>
<li>
@Html.ActionLink("Details", "Details", "First", new { area = "", id = @Model.FirstId }, new { @class = "button" })
</li>
</ul>
</div>
}
}
控制器>家庭控制器.cs
public ViewResult Index(int page = 1)
{
FirstListViewModel viewModel = new FirstListViewModel
{
First = repository.First
.OrderByDescending(m => m.FirstId)
.Skip((page - 1) * PageSize)
.Take(PageSize),
PagingInfo = new PagingInfo
{
CurrentPage = page,
ItemsPerPage = PageSize,
TotalItems = repository.First.Count()
}
};
return View(viewModel);
}
模型>第一列表视图模型.cs
using System.Collections.Generic;
using MovinMyStuff.Domain.Entities;
namespace MovinMyStuff.WebUI.Models
{
public class FirstListViewModel
{
public IEnumerable<First> Firsts { get; set; }
public PagingInfo PagingInfo { get; set; }
}
}
视图模型>第一和第二.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using MovinMyStuff.WebUI.Models;
namespace MovinMyStuff.WebUI.ViewModels
namespace MovinMyStuff.WebUI.ViewModels
{
public class MovesAndMovers
{
public MovesListViewModel movesList { get; set; }
public MoversListViewModel moversList { get; set; }
public MovesAndMovers()
{
movesList = new MovesListViewModel();
moversList = new MoversListViewModel();
}
}
}
我想通了!这可是一件很艰巨的任务...我花了将近 10 个小时试图解决这个问题,所以请继续关注,因为我会给任何想要这个的人答案。现在我所要做的就是防止刷新将我发送回页面顶部。哎呀!希望不会那么糟糕...( :