ASP.NET 4.0 – Transformation du fichier Web.config

by Fabien Lavocat 11. May 2010 08:43

ASP.NET 4.0Parmi toutes les nouveautés de la version 4.0 d’ASP.NET, la possibilité d’avoir des fichiers de configuration (Web.config) par type de build (Debug, Release…) est tout simplement excellente !
Il n’est plus nécessaire d’avoir son fichier Web.config en local avec sa connexion à la base de données de sa machine, et un autre fichier que l’on modifie sur le serveur qui contient la chaîne de connexion à la base de données de production. Lorsque vous créez une application ASP.NET avec le .NET Framework 4.0, vous aurez un fichier Web.config qui contient votre chaîne de connexion à la base de données locale, et toutes les informations dont vous avez besoin (AppSettings…).

Prenons l’exemple d’un fichier de configuration qui contient la chaîne de connexion suivante :

Ce fichier contient également deux sous-fichiers joints :

Le fichier Web.Debug.config est utilisé lorsque l’on est en mode Debug, et logiquement, le fichier Web.Release.config est utilisé en mode Release. Bien sûr, si vous avez une chaîne de développement plus complexe, à savoir des environnements de staging, de test… vous pouvez créer ces modes dans le Configuration Manager, dans le menu Build | Configuration Manager.

image

Ces fichiers dédiés à un environnement de configuration est différent du fichier de base. En effet, un fichier de configuration sera généré en prenant le fichier de base (Web.config) puis en lui appliquant une série de transformation XML Document Transform (XDT).

Dans notre exemple, je vais remplacer (xdt:Transform=”Replace”) la chaîne de connexion à la base de données (champs ‘connectionString’), lorsque la condition xdt:Locator=”Match(name)” est vrai.
C’est à dire que je vais remplacer ma chaîne de connexion qui est nommée 'cnx’ par le champs ‘connectionString’ ci-dessus.

Parmi les possibilités de transformation, on retrouve la possibilité de supprimer une entrée (Remove), supprimer toutes les entrées (RemoveAll), ajouter une nouvelle entrée (Insert), définir de nouveaux attributs (SetAttributes), supprimer des attributs (RemoveAttributes)…

Lien MSDN pour la syntaxe de transformation d’un fichier de configuration.
Je vous recommande également le blog de Vishal Joshi qui explique en détail (et en anglais) toutes ces informations.

Tags:

Tutoriaux .NET

Comments

5/14/2010 3:49:34 AM #

Antoine

A priori la traduction française de ces articles dans la librairie MSDN est en ligne Wink

Antoine France

5/14/2010 4:25:15 PM #

Nicolas Esprit

Si ça t'intéresse, je viens de poster un article sur le déploiement Web avec Visual Studio 2010. J'y aborde surtout les Web Package mais aussi la Transformation de fichier Web.Config : nicolasesprit.developpez.com/.../

Nicolas Esprit France

5/16/2010 2:28:05 AM #

fabien lavocat

@Antoine, effeectivement c'est en ligne, merci Smile
@Nicolas, super article, vraiment très interessant et très complet !

fabien lavocat France

5/16/2010 9:07:10 AM #

Nicolas Esprit

@Fabien, merci c'est mon tout premier Smile
Je suis loin d'être aussi productif que les MVP mais j'apporte ma pierre à l'édifice aussi.

Nicolas Esprit France

6/14/2010 5:44:24 AM #

Nk54

Je me penche seulement sur le web.config dynamique ! Ca à l'air vraiment pas mal ! De plus j'ai remarqué qu'en 4.0, le web.config était plus léger. Sympa pour la lisibilité Smile

Je fonce sur l'article de Nicolas !
Mercie Fabien

Nk54 France

10/4/2010 8:08:10 AM #

frd73

La fonctionalité de Transformation du fichier Web.config est propre à VS 2010 pas à ASP.NET 4.0 non?

frd73 Switzerland

Add comment


(Will show your Gravatar icon)

  Country flag

biuquote
  • Comment
  • Preview
Loading



About

Fabien Lavocat

Lavocat Fabien
Ingénieur Multimédia - TMM Communication



"Blog-Microsoft.fr is an independent blog and is not affiliated with, nor has it been authorized, sponsored, or otherwise approved by Microsoft Corporation."

Contactez-moi Send mail

MVP
Microsoft Most Valuable Professional
Client Application Development