110 votes

Ce qui ' la différence entre le WebConfigurationManager et ConfigurationManager ?

Quelle est la différence entre le WebConfigurationManager et le ConfigurationManager?

Quand dois-je utiliser l'un plutôt que l'autre?

Mise à JOUR

J'ai juste regardé le WebConfigurationManager, et pour une raison quelconque, vous ne pouvez pas accéder à la connexion des chaînes comme vous le faites dans le ConfigurationManager (comme un tableau). Quelqu'un peut me dire pourquoi MS fait comme ça? Il semble être une douleur pour obtenir la chaîne de connexion que vous souhaitez à l'aide du WebConfigurationManager.

De NOUVEAU mis à JOUR avec mise en garde!

Si vous n'avez pas de référence pour le Système".Configuration" de l'espace de noms ajoutés à votre projet, puis Visual Studio affiche une erreur lorsque vous essayez d'accéder à la WebConfigurationManager.ConnectionStrings comme un tableau!

99voto

XOR Points 1027

WebConfiguratonManger sait comment faire face à l’héritage de configuration dans une application web. Comme vous le savez, il y aurait plusieurs fichiers web.config dans une applicaion - un à la racine du site et n’importe quel nombre de sous-répertoires. Vous pouvez passer le chemin d’accès à la méthode GetSection() pour obtenir une config substituée possible.

Si nous serions looke à WebConfigurationManager avec réflecteur puis les choses sont claires :

27voto

Konstantin Tarkus Points 16862

WebConfigurationManager est faite spécialement pour ASP.NET des applications.

WebConfigurationManager fournit des méthodes supplémentaires pour charger les fichiers de configuration applicables pour les applications Web.

ConfigurationManager fournit également des méthodes pour charger des fichiers de configuration qui s'applique à ".exe" des applications.

Je vous suggère de prendre un coup d'oeil à WebConfigurationManager et voir si elle vous offre tout ce que vous ne peut tout simplement pas avec ConfigurationManager et l'utiliser à la place, sinon à l'aide de ConfigurationManager sera beaucoup plus facile d'avoir votre code soit utilisé de façon transparente entre le web et le bureau de l'aps.

3voto

Zhaph - Ben Duguid Points 18573

Pas sûr de ce que tu veux dire sur les chaînes de connexion.

L'Appel De WebConfigurationManager.ConnectionStrings retourne un Système.La Configuration.ConnectionStringSettingsCollection, qui est le même que vous obtiendriez si vous avez appelé ConfigurationManager.ConnectionStrings.

Sinon, comme XOR dit, il est conçu pour gérer plusieurs hiérarchique web.les configs, en les combinant, comme vous vous déplacez les dossiers dans une application.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X