我命名PagedList了類,看起來像這樣:問題與MVC分頁表3
public class PagedList<T> : List<T>
{
public int PageIndex { get; private set; }
public int PageSize { get; private set; }
public int TotalCount { get; private set; }
public int TotalPages { get; private set; }
public bool HasPrevious
{
get
{
return (this.PageIndex > 0);
}
}
public bool HasNext
{
get
{
return (this.PageIndex + 1 < this.TotalPages);
}
}
public PagedList(IEnumerable<T> source, int pageIndex, int pageSize)
{
this.PageIndex = pageIndex;
this.PageSize = pageSize;
this.TotalCount = source.Count();
this.TotalPages = (int)Math.Ceiling(TotalCount/(double)PageSize);
this.AddRange(source.Skip(this.PageIndex * this.PageSize).Take(this.PageSize));
}
}
在我客戶控制器我用它像這樣:
public ActionResult Index(int? page)
{
IRepository<UserInfo> profile = ObjectFactory.GetInstance<IRepository<UserInfo>>();
const int pageSize = 25;
IQueryable<UserInfo> profiles = profile.GetAll().OrderBy(x => x.LastName).AsQueryable<UserInfo>();
var pagedCustomers = new PagedList<UserInfo>(profiles, page ?? 0, pageSize);
return View(pagedCustomers);
}
最後在我的Index.cshtml文件中,我設置了我的模型,如下所示:
@model System.Web.Mvc.ViewPage<PagedList<Clusteris.Data.UserInfo>>
而當我去模型。這是一個巨大的列表,與我在Customers控制器中創建的PagedList無關。
任何人有什麼想法我做錯了什麼?
UPDATE:
截圖:
你能向我們展示一些模型輸出大致的文字嗎? – Aaronontheweb
我不確定我是否瞭解您的請求 – PsychoCoder
「當我去模型時,這是一個巨大的列表,與我在客戶控制器中創建的PagedList無關。」 - 通過舉例的方式解釋這意味着什麼。 – Aaronontheweb