Repeater, paginação personalizada, PagedDataSource, possível?
Pergunta
HI, eu estou tendo um Repetidor vinculado a um ObjectDataSource. Eu recuperar meus dados usando um DataSet e meu TableAdapter fazer consulta um subconjunto de dados de acordo com um startIndex e pageSize. Eu sou tudo pronto para paginação personalizada e ele realmente funciona.
No entanto, eu gostaria de saber se é possível para o meu TableAdapter para retornar um PagedDataSource, para vincular minha ObjectDataSource para ele, tudo isso usando paginação personalizada e codificação meu próprio pager usando as propriedades do PagedDataSource.
No momento, eu sou armazenar um monte de informações no ViewState como o currentPage, IsFirstPage, IsLastPage, etc ... Uma coisa chata é que o SelectCountMethod do ObjectDataSource não vai expor o resultado que é um must-have para criar o pager ... Basicamente eu preciso fazer outra chamada para o banco de dados apenas para pegar esse valor.
Herdando a ObjectDataSource ou ObjectDataSourceView apenas para expor o TotalRowCount é muito complicado, eu mal sido capaz de fazê-lo funcionar sem adicionar funcionalidades.
Eu li um pouco sobre PagedDataSource e parece que ele não pode fazer muito paginação personalizada, juntamente com um repetidor ...
Todas as idéias?
Solução
Você poderia tentar um DataList juntamente com uma DataPager obrigado a seus ODS. O DataList é similar a um repetidor em que você tem que declarar explicitamente a marcação emitida, mas capacidades de paginação ofertas mais robustos, especialmente junto com o controle DataPager. Consulte este conjunto de artigos para obter mais informações sobre como usar os controles.
Outras dicas
Isto soa quase exatamente como o que eu implementado há alguns dias. Eu tenho um monte de ajuda fora do 4 Guys From Rolla . Verifique se o artigo e ele irá mostrar-lhe como configurar um repetidor com paginação. Aqui está mais um 4GfR artigo .
- Editar : Outra fonte que aparece para tentar a mesma coisa: Biblioteca ASP.NET
- Editar 2 : E uma fonte de ASPNETTutorials