[Asp.net] Répéteur, ListView, DataList, DataGrid, GridView ... Lequel choisir?


Answers

Tout le monde l'a frappé: ça dépend.

Maintenant, pour quelques conseils spécifiques (en développant l'excellente réponse de WebDude ci-dessus) ...

Votre conception s'intègre-t-elle dans une feuille de calcul naturelle ou une vue en grille des données? GridView .

Avez-vous besoin d'afficher une liste ou une autre vue formatée des données, éventuellement avec en-têtes et pieds de page, et probablement avec des contrôles spécifiques et / ou un formatage pour chaque enregistrement de données? (Par exemple, des liens personnalisés, éventuellement des LinkButtons, ou des contrôles d'édition spécifiques?) Cet affichage ne s'intègre-t-il pas tout naturellement dans une feuille de calcul ou une vue de grille? ListView

Si vous répondez à tous les critères de ListView, mais que vous intégrez naturellement une grille, vous pouvez envisager DataList .

Je vais pour Repeater quand j'ai juste besoin de quelques données de base itérées avec quelques bits de conception personnalisés, pas d'en-têtes, pas de pieds de page, agréable et propre.

Question

Autant de contrôles différents à choisir! Quelles sont les meilleures pratiques pour déterminer quel contrôle utiliser pour afficher des données dans ASP.NET?




Effectivement! J'ai blogué sur les différences entre les outils de données ASP.NET 4.0 . Fondamentalement, les gridviews sont le moyen le plus puissant de présenter des informations tabulaires, alors que les contrôles ListView sont pour des affichages plus complexes de données répétées. Si je donnais des conseils à un débutant ASP.NET, je leur dirais d'apprendre grille vues à l'envers et ignorer les autres contrôles pour commencer.