MVC pagedlist.mvc和aspx视图

时间:2013-07-22 07:23:50

标签: asp.net-mvc-3 nuget pagedlist

我有一个页面,其中我使用Nuget包pagedlist.mvc 3.0.18(MVC3的最新版本)。问题是,当我列出页面时,它使我的页面成为一个类似于

的列表

  • 上一页
  • 1
  • 2
  • 3
  • 4
  • next
  • 而不是< 1,2,3,4,5,6,7 ..>

    我的观点看起来像

    <%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<IPagedList<News>>" %>
    <%@ Import namespace="PagedList" %>
    <%@ Import namespace="PagedList.Mvc" %>
    
    <asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
    
     <table>
     <tr>
     <td>
    <% foreach (var v in Model)
       {%>
    
        <%: v.Content %><br />
        <%: v.DateCreated %><br />
        <%: v.Email %><br />
    
    <%} %>
    
    <h2>News</h2>
    
    <%: Html.PagedListPager(Model, page => Url.Action("News", new { page }), PagedListRenderOptions.Minimal)%>
    

    背后的代码看起来像

    public ActionResult News(int? page)
            {
                List<News> products = HomeBLL.GetNewsList(); //returns IQueryable<Product> representing an unknown number of products. a thousand maybe?
    
                var pageNumber =  page ?? 1; // if no page was specified in the querystring, default to the first page (1)
                var onePageOfProducts = products.ToPagedList(pageNumber, 25); // will only contain 25 products max because of the pageSize
    
                ViewBag.OnePageOfProducts = onePageOfProducts;
    
                return View(onePageOfProducts);
            }
    

    有什么可能出错的建议吗?标准CSS也包括在内。

    3 个答案:

    答案 0 :(得分:0)

    您应该在View中包含PagedList.css(它位于Content文件夹中)。

    答案 1 :(得分:0)

    似乎aspx视图不支持最新的pagedlist包,除非你达到这个包的低级别。

    答案 2 :(得分:0)

    在_Layout页面或视图页面顶部的HEAD标记中包含css文件PagedList.css。

    相关问题