109 votes

À quoi servent les fichiers Web.Debug.config et Web.Release.Config ?

Je viens d'effectuer une mise à niveau vers Visual Studio 2010 et MVC 2.0 et j'ai remarqué que le Web.config comporte deux fichiers supplémentaires ? Ces fichiers sont-ils utilisés pour spécifier les paramètres spécifiques aux versions de débogage et de publication, afin de ne pas encombrer le fichier Web.config principal ?

Cela a-t-il un sens de placer une chaîne de connexion dans le fichier Web.config racine si j'en ai une locale et une distante dans les Web.configs de débogage et de version respectivement ?

Gracias.

96voto

R0MANARMY Points 8440

Il s'agit de la nouvelle fonctionnalité de transformation Web.config de Visual Studio 2010. Plus d'informations ici .


Edit :

Ces fichiers sont-ils utilisés pour spécifier les paramètres spécifiques aux versions de débogage et de publication, afin de ne pas encombrer le web.config principal ?

Il n'est pas limité à trois fichiers, vous pourriez (en théorie) avoir autant de fichiers que vous avez d'environnements. Le Web.config de "premier niveau" fournit un modèle de votre web config. Les fichiers situés en dessous fournissent des valeurs de remplacement spécifiques à cet environnement (par exemple, si vous avez des chaînes de connexion différentes pour local/stage/test/quelque chose).

Cela a-t-il un sens de placer une chaîne de connexion dans le fichier web.config racine si j'en ai une locale et une distante dans les web.config de débogage et de publication respectivement ?

Cela n'aurait de sens que si elle ne devait pas changer d'un environnement à l'autre. On dirait que dans votre cas, c'est le cas, donc non, cela n'aurait pas de sens de le laisser dans le Web.config.

10voto

eKek0 Points 9861

Il s'agit de fichiers de transformation Web.config. De Déploiement Web ASP.NET à l'aide de Visual Studio : Transformations du fichier Web.config :

Il existe deux façons d'automatiser le processus de modification des paramètres du fichier Web.config : Les transformations Web.config et les paramètres Web Deploy. Un fichier de transformation Web.config contient un balisage XML qui spécifie comment modifier le fichier Web.config lors de son déploiement. Vous pouvez spécifier différents changements pour des configurations de construction spécifiques et pour des profils de publication. Les configurations de compilation par défaut sont Debug et Release, et vous pouvez créer des configurations de compilation personnalisées. Un profil de publication correspond généralement à un environnement de destination.

-3voto

Emile Points 119

C'était quelque chose dont on avait besoin depuis longtemps dans le VS. Malheureusement, il semble y avoir un problème avec l'implémentation. Par exemple, considérez ce scénario (VS.2010 Ultimate, tous les SP) :

Web.Config

  • Pas de connexionSection cordes
  • Membre à part entière Utilisateur/Rôle/etc. Configuration du fournisseur avec connectionStringName="test".

Web.Release.Config

  • Aucune configuration d'adhésion (déjà spécifiée dans le web.config principal)
  • la section connectionStrings incluant le CS nommé "test".

Web.Debug.Config

  • Aucune configuration d'adhésion (déjà spécifiée dans le web.config principal)
  • la section connectionStrings incluant le CS nommé "test".

Lors de l'exécution, l'application donne l'erreur suivante :

Le nom de connexion "test" n'a pas été trouvé dans la configuration des applications ou la chaîne de connexion est vide.

En d'autres termes, étant donné que les éléments de la chaîne de connexion se trouvent dans les fichiers du concepteur de la version/du débogage et que utilisé par des éléments de configuration dans le fichier principal (Web.config), il est incapable de le résoudre.

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