2009-09-23 5 views
0

로 페이징 관리최선의 방법 정말 음속에 종사하고있어하지만 난 그게 무슨 뜻</p> <p>가 어떻게 목록에서 "페이지"를 얻을 수 페이징와 함께 작동하도록하는 방법을 모르겠어요 또는 방법이다 아음속 3.003

m02colegio가 액티브


012,308에서 생성 된 클래스 : 페이지 당신은 볼 수

으로 내 기본 페이지에 전체 테이블을 관리하는 가장 좋은 방법은 내가 세 가지를 시도 91,

-----------과 :

SubSonic.Schema.PagedList<m02colegio> loscolegios; 
loscolegios = m02colegio.GetPaged(0, 80); 

-----------과 :

var paged = m02colegio.GetPaged(0,80).All<m02colegio>(x=>x.m02ccolnom.Contains(" ")); 
// 'cause i dont know how to tell it to consider all records 
loscolegios = m02colegio.All().ToList(); 

하지만 모든 후

난 예외가 없으며 loscolegios는 항상 NULL이다.

이 방식으로 레코드에 액세스해야한다.

그래서, 가장 좋은 방법은 무엇입니까?

첫 번째 페이지를 얻은 다음 페이지 간을 어떻게 이전 할 수 있습니까 ?? 그것은 당신에게 아이디어를 제공합니다 그러나 MVC의 의미에서

답변

0
public ActionResult Index(int? page) 
    { 

     if (!validateInt(page.ToString())) 
      page = 0; 
     else 
      page = page - 1; 

     if (page < 0) page = 0; 

     const int pagesize = 9; 

     IQueryable<m02colegio> Mym02colegio = m02colegio.All().Where(x => x.category == "test").OrderBy(x => x.id); 

     ViewData["numpages"] = m02colegio.All().Where(x => x.category == "test").OrderBy(x => x.id).Count()/pagesize; 
     ViewData["curpage"] = page; 


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

는, 지수는 null 또는 모든 레코드가 다음받은 레코드 pagelist을 반환받을 페이지 번호 을 받아들입니다.

0

이것이 현재 github 소스에서 수정 된 버그인지 또는 설계 상으로는 틀린 것이지만 GetPaged가 첫 번째 인수에 대해 1 기반 인덱스에서만 작동한다는 것을 알았습니다. 따라서 다음과 같이하면 예상대로 작동합니다.

IList<m02colegio> loscolegios = m02colegio.GetPaged(1, 80);