Y a-t-il des avantages de performance à ne pas utiliser le gridview dans asp.net pour les requêtes de tables simples à partir d'une procédure stockée et à la place écrire le code HTML dans le code serveur moi-même. Je suis sûr que mon code serait certainement plus concis en sortie.asp.net gridview vs écriture innerhtml
Répondre
Je vais vous proposer une autre solution. Si vous n'avez besoin d'aucune des fonctionnalités d'un GridView, pourquoi ne pas utiliser un répéteur.
Un répéteur facilite la mise en œuvre, mais vous permet également d'avoir un contrôle total sur la source générée. Sans le problème de la préformance de concaténation de chaînes.
J'ai trouvé des améliorations de performances marginales avec les répéteurs sur GridViews.
Non, l'utilisation d'un GridView ne présente aucun avantage en termes de performances. En général, le GridView va diminuer un peu de performance en raison du fait que les éléments sont écrits dans ViewState, et HTML supplémentaire est généré. Les avantages que vous obtenez de GridView incluent des événements de commande et des arguments qui peuvent être facilement consommés ou créés, un «sac de propriétés» DataKey qui vous permet de suivre les champs critiques dans un grand ensemble de résultats, ainsi que bien d'autres choses. Je vais ajouter cette mise en garde que j'ai utilisé GridViews sur des retours de jeu de résultats, même très simples et n'ont pas vu de problèmes de performance significatifs.
Si vous effectuez simplement une sortie à partir d'une requête de table et que vous ne vous souciez pas trop d'interagir avec les données des résultats, "rouler le vôtre" serait une excellente solution.
Eh bien, cela dépend de votre implémentation. Vous pourriez presque certainement construire quelque chose qui fonctionne plus vite que la grille de stock.
Le problème est, comment le sauriez-vous? Le système par défaut pour la concaténation de chaînes dans .Net est par sa nature très lente, il serait donc facile de construire accidentellement quelque chose qui est beaucoup plus lent que le gridview stock. Vous pouvez bien sûr tester les choses, mais l'investissement en temps de développement est susceptible de l'emporter sur les gains de performance du serveur.
Il existe une possibilité supplémentaire ici entre l'utilisation d'un GridView et l'utilisation d'un StringBuilder pour générer du code HTML. Je parle d'utiliser la classe ASP Table. J'ai vu des gains de vitesse impressionnants en les utilisant sur un GridView standard quand tout ce que je fais est de cracher des données. En bonus, je peux ajouter un bouton (ou un bouton de lien) à ma sortie et le connecter avec un gestionnaire d'événements tout en obtenant la fonctionnalité d'un GridView à cet égard.
Vous utiliseriez ainsi:
Dim tab As New Table
For Each row In DataTable.Rows
Dim tabRow as New TableRow
For Each col In row.Columns
dim tabCol as New TableColumn
tabCol .Text = row(col)
tabRow.Controls.Add(tabCol)
Next
tab.Rows.Add(tabRow)
Next
Page.Controls.Add(tab)
- 1. grille personnalisée asp.net vs GridView/ListView
- 2. ASP.NET - GridView
- 3. Paging sur le contrôle GridView VS-2008
- 4. asp: CheckBoxField dans GridView - VS 2008
- 5. GridView dans ASP.NET 2.0
- 6. ASP.NET GridView HeaderRow
- 7. Asp.net gridview template colonne
- 8. ASP.NET gridview delete
- 9. problème avec asp.net gridview
- 10. GridView ASP.NET Tri
- 11. ASP.Net GridView GridViewDeleteEventArgs.Keys vide
- 12. C# ASP.NET Gridview réductible
- 13. ASP.NET 3.5 Contrôle Gridview
- 14. ASP.Net GridView Tri
- 15. Asp.Net GridView Pager colspan?
- 16. Édition Gridview ASP.NET
- 17. Callback et asp.net gridview
- 18. ASP.net GridView Margins
- 19. ASP.NET MVC vs ASP.NET 4.0
- 20. sortie en utilisant innerHTML
- 21. innerHTML et PHP
- 22. dom createElement et innerHTML
- 23. Écriture d'une balise JSF personnalisée
- 24. asp.net formatage dateTime dans gridview
- 25. Création de Dynamic GridView ASP.NET
- 26. Problème de pagination ASP.NET Gridview
- 27. sélecteurs Jquery - filtrage ASP.NET GridView
- 28. Totalisation d'un GridView dans ASP.NET
- 29. Asp.net GridView ignorer l'attribut CellSpacing
- 30. Colonnes déplaçables dans ASP.NET GridView