2010-01-03 4 views

Répondre

4

Regardez LinqDataSource.AutoPage. Vous pouvez régler cela en utilisant les éléments suivants:

<asp:LinqDataSource 
    . 
    . 
    . 
    AutoPage="true" 
    . 
    . 
    . 
    runat="server"> 
</asp:LinqDataSource> 

Notez que, de la documentation, cette propriété est true par défaut:

true si l'utilisateur peut parcourir les données; sinon, false. La valeur par défaut est true.

De plus:

Lorsque la propriété AutoPage est réglé sur true, le contrôle LinqDataSource récupère seulement assez pour les enregistrements d'une page dans le contrôle lié aux données. Il utilise les méthodes Skip(TSource) et Take(TSource) pour récupérer les enregistrements de la page en cours.

+0

Si vous le définissez sur true, cela activera la pagination côté serveur, alors? – Will

+0

Oui, et la valeur par défaut est 'true'. – jason

+0

Savez-vous si cela fonctionne bien avec la propriété Where du concepteur de configuration pour cette source de données? Il serait regrettable pour elle de retourner une page de résultats, puis de les filtrer à rien car aucun ne répond aux critères de filtrage. Cela a-t-il du sens? – Will

0

Non, il ne fonctionne pas par défaut, mais il est très facile à mettre en œuvre avec

.Skip(perPage*(page-1)).Take(perPage) 

modifier: Huh, je suppose qu'il fait en réalité!

1

Je recommanderais d'utiliser sql profiler pour tester les performances de vos requêtes sql.

Questions connexes