2010-02-04 6 views
1

Dans ASP.NET, quel est l'ordre de priorité avec la définition de viewstate et de propriétés similaires? Ceux-ci peuvent être définis sur web.config, au niveau de la page et également sur le contrôle. Si je l'éteins à la fois web.config (global), niveau de la page, mais au niveau du contrôle, par exemple, quel est le résultat?Préséance des paramètres tels que viewstate à différents niveaux

Merci

Répondre

0

La classe Page est itérés et la méthode SaveViewState() de chaque commande est appelée. Par conséquent, si votre classe Page a son EnableViewState défini sur false, cette itération ne se produira pas et vos états verront leurs états d'affichage désactivés. Cela signifie que si vous voulez qu'un contrôle ait son état viewstate activé, la valeur EnableViewState doit être définie sur true pour la page.

Si vous souhaitez désactiver l'affichage de la plupart des contrôles sur une page, vous devrez trouver une solution de contournement. Par exemple, vous pouvez créer une petite classe qui itère à travers votre hiérarchie de contrôle et désactive le viewstate pour les contrôles spécifiés. Vous pouvez également utiliser une sorte de conteneur et désactiver viewstate pour ce conteneur, de sorte que tous ses contrôles sont également désactivés. Toutes les commandes que vous souhaitez autoriser viewstate peuvent être placées à l'extérieur du conteneur. Ces deux méthodes nécessiteraient toujours que EnableViewState soit vrai.

Questions connexes