2009-04-23 7 views
0

Je souhaite pouvoir stocker des variables accessibles à tous les autres fichiers de mon projet ASP.net, mais qui peuvent être modifiés par programmation. Ce que je cherche est quelque chose comme être capable de tirer des informations du fichier web.config pour dire les chaînes de connexion de base de données (ex System.Configuration.ConfigurationManager.ConnectionStrings ["cnDatabase"]. ToString())Comment et où les variables utilisées dans le projet ASP.net sont-elles créées/stockées?

I avoir des variables qui ont des valeurs qui sont partagées entre toutes les autres pages et je voudrais pouvoir modifier dans un endroit au lieu de devoir mettre à jour la même valeur dans les pages 4+ aspx.cs.

+0

Je suppose que vous voulez dire "modifié par programmation" (bien que je ne puisse pas l'épeler), pas "modifié de façon problématique" –

+0

Oui - je l'ai juste changé. Merci – EverTheLearner

Répondre

2

AppSettings dans le fichier web.config

ou

constantes publiques/internes

1

Si vous voulez quelque chose qui est globale à l'application dans laquelle vous pouvez ajouter des variables personnalisées, utilisez un Global.asax . Tout ce que vous ajoutez ici sera disponible via la variable globale héritée dans toutes les pages et tous les contrôles. Si tout ce dont vous avez besoin est un magasin de clés/valeurs, vous pouvez utiliser les variables statiques Application ou Session héritées dans toutes les pages et tous les contrôles. Application (qui est juste une instance statique de HttpApplicationState) est un objet que vous pouvez utiliser comme Hashtable pour stocker des valeurs personnalisées qui seront disponibles sur toutes les pages pour tous les utilisateurs. Et, Session (HttpSessionState) est disponible de la même manière pour une utilisation comme Hashtable, mais les valeurs que vous stockez seront uniques par session d'utilisateur. Remarque: si vous avez besoin d'accéder à l'un de ces objets en dehors d'une page ou d'un contrôle (par exemple une classe personnalisée utilisée dans le cadre d'une demande de page), vous pouvez y faire référence via le contexte http actuel (HttpContext.Current).

Questions connexes