2009-08-24 53 views
0

嗨,我希望有一些很好的分頁我的亞音速項目,我很好, 背後的代碼,但我無法找到任何有關分頁信息查看事物的一面?subsonic 3.0.0.3 MVC2如何工作分頁Model.HasPreviousPage不工作

我曾嘗試

Model.HasPreviousPage 

,但這已不存在,所以我都出在哪裏甚至開始的想法,有沒有這個東西一些隱藏的手動顯山露水,ActiveRecord的,我真的不喜歡有來問問 ,寧願有些事情我可以閱讀和搜索,但最新的東西。

我發現的一切似乎都是針對舊版本的MVC或老版本的亞音速或更糟糕的兩種組合。

大加讚賞

回答

1

好吧,這就是我有我自己回做,我希望得到一些意見,如果這是可行的和可以接受的,請:

後面的代碼(控制器)

public ActionResult Index(int? page) 
    { 
     if (!validateInt(page.ToString())) 
      page = 0; 

     page = page - 1; 

     if (page < 0) 
      page = 0; 

     const int pagesize = 9; 

     IQueryable<material> myMaterial = material.All().Where(x => x.category == "Granite").OrderBy(x => x.id); 
     var mycount = material.All().Where(x => x.category == "Granite").OrderBy(x => x.id).Count(); 

     ViewData["numpages"] = mycount/9; 
     ViewData["curpage"] = page; 

     return View(new PagedList<material>(myMaterial, page ?? 0, pagesize)); 

    } 

在HTML

showing page <%=Convert.ToInt32(ViewData["curpage"]) + 1 %> of <%=ViewData["numpages"] %><br /> 
<% 
    for (int i = 1; i <= Convert.ToInt32(ViewData["numpages"]); i++) 
    { 
     %> 

     <span><b><%= Html.ActionLink(i.ToString(),"Index","granite",new{page=i},null) %></b></span> 

     <% 
    } 

%>

跨度只是基本的,但如果這是一個好方法,那麼我將只是樣式我的跨度?

我不能得到這個頁面雖然,無論我似乎得到相同的9個結果,現在有點困惑!

感謝

+0

它的一頁,我必須嗅聞太多膠水:-) 那麼如何,這是好的?這是很好的使用MVC? – davethecoder 2009-08-24 16:53:09

+0

Thnx fr解決方案...你能解釋PagedList嗎? – Niks 2013-03-05 09:48:07