2009-06-19 4 views
2

HI, j'ai un répéteur lié à un ObjectDataSource. Je récupère mes données en utilisant un DataSet typé et mes TableAdapter interrogent un sous-ensemble de données en fonction d'un startIndex et d'un pageSize. Je suis prêt pour la pagination personnalisée et cela fonctionne.Répéteur, pagination personnalisée, PagedDataSource, possible?

Cependant, je voudrais savoir s'il est possible pour mon TableAdapter pour revenir un PagedDataSource, pour lier mon ObjectDataSource à lui, tout cela en utilisant la pagination personnalisée et le codage mon téléavertisseur en utilisant les propriétés du PagedDataSource.

En ce moment, je suis stocker un tas d'informations dans le ViewState tels que le PageCourante, IsFirstPage, IsLastPage, etc ... Une chose est gênant ici que le SelectCountMethod de ObjectDataSource ne pas exposer le résultat qui est un must-have pour créer le pager ... Fondamentalement, je dois faire un autre appel à la base de données juste pour choisir cette valeur.

Hériter de ObjectDataSource ou ObjectDataSourceView juste pour exposer TotalRowCount est trop compliqué, j'ai à peine réussi à le faire fonctionner sans ajouter de fonctionnalités.

J'ai lu un peu PagedDataSource et il se sent comme il ne peut pas faire beaucoup Paging sur mesure avec un répéteur ...

Toutes les idées?

Répondre

1

vous pouvez essayer une DataList avec un DataPager lié à votre ODS. La DataList est similaire à un répéteur en ce sens que vous devez déclarer explicitement le balisage émis, mais offre des capacités de pagination plus robustes, en particulier avec le contrôle DataPager. Voir these set of articles pour plus d'informations sur l'utilisation des commandes.

+0

Je suis impatient de votre idée +1, ne devrais Ne prends pas trop de temps. – maxbeaudoin

+0

Je suis foutu, en utilisant 2.0 hehe ... Je vais chercher un type DataPager pour 2.0. – maxbeaudoin

+0

doh ... ouais ça va rendre la tâche beaucoup plus difficile si vous êtes coincé dans la terre 2.0. –

1

Cela ressemble presque exactement à ce que je viens d'implémenter il y a quelques jours. J'ai eu beaucoup d'aide sur 4 Guys From Rolla. Vérifiez cet article et il vous montrera comment configurer un répéteur avec pagination. Voici encore un autre 4GfR article.

+0

Corriger monsieur, cependant, c'est la pagination par défaut? et donc inefficace contre une grande quantité de données. Le premier lien est intéressant +1! – maxbeaudoin