Question

J'utilise Framework 2.0 et je ne comprends pas comment la grille de données et les jeux de données fonctionnent après la publication. Dans msdn dit qu'il n'est pas nécessaire de refaire un index de données si la demande est une publication. Mais ma question est la suivante: comment la grille de données affiche à nouveau les enregistrements s'il n'y a pas de databind? Je suppose que asp.net enregistre en cache les résultats de la requête, mais je ne suis pas sûr. Dites-moi quel est le mécanisme utilisé par .NET pour le réaliser.

J'ai un résultat de requête volumineux (des centaines), paginé 50 enregistrements, et je souhaite éviter de répéter la même requête à chaque fois que l'utilisateur sélectionne les 50 enregistrements suivants.

Merci d'avance.

Était-ce utile?

La solution

ASP.NET enregistre vos valeurs précédentes dans ViewState afin qu'elles ne soient pas perdues entre les publications.

Mais dans votre cas, vous parlez de pagination, les nouveaux enregistrements. Si vous les récupérez à la première demande, vous pouvez peut-être les stocker à viewstate, mais ce n'est pas une bonne idée. Votre page sera affichée très lentement si vous avez beaucoup d'enregistrements.

Si vos clients obtiennent les mêmes données à chaque fois et que les modifications de données actuelles ne sont pas importantes pour afficher des données, vous pouvez peut-être les mettre en cache avec Le mécanisme de mise en cache de asp.net .

Autres conseils

La réponse à cette question est l'état de vue. La totalité de la grille affichée est stockée dans l'état de visualisation et c'est ce qui persiste dans les publications.

C'est-à-dire que la grille est définie lors du chargement initial de la page et stockée dans l'état d'affichage. Lorsque l'utilisateur clique sur un lien / bouton pour publier le formulaire, l'état d'affichage est alors décodé et est à nouveau disponible. Par conséquent, vous n'avez pas besoin de relier la grille. Cependant, il faut tenir compte de certaines mises en garde.

Viewstate est le mot magique: P

ASP.NET WebForms concerne uniquement ViewState .

Le concept est essentiellement le suivant: ASP.NET stocke les informations dans un élément d’entrée masqué sur votre page, puis le récupère automatiquement côté serveur à l’aide de publications (postbacks) qui envoient le formulaire (entouré de l’ensemble de votre site) sur le serveur.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top