2009-06-04 3 views
2

J'examine ma méthode pour récupérer les valeurs appsettings à partir de mes fichiers de configuration. Avant de stocker la valeur dans une variable statique dans une classe ConfigurationManager globale pour éviter plusieurs lectures de disque inutiles dans le fichier web.config. Il semble que ce n'était pas nécessaire car la classe WebConfigurationManager le fait déjà. Est-ce vraiment le cas? Si j'émets la commande suivante 10 fois de suite, combien de fois accéderait-il réellement au fichier web.config?ASP.NET web.config appsettings persistance

myConfigValue = WebConfigurationManager.AppSettings ["MyConfigValue"];

Répondre

3

Il ne se rendrait qu'une fois sur le disque, et même alors, il l'a probablement déjà fait à la première requête pour n'importe quelle page de l'application.

Chaque fois que vous créerez une chaîne "MyConfigValue", vous devrez faire une recherche. Il y a peut-être lieu de faire des améliorations si vous pouvez mettre cette partie quelque part.

De toute façon, c'est une micro-optimisation.

+0

Merci de confirmer. Si je modifie le fichier web.config pendant que l'application est en cours d'exécution, .NET relira-t-il la valeur de web.config? –

+0

Merci pour les informations supplémentaires. Je pense que je vais arrêter de transpirer les petites choses. –