1) Créer les 3 configurations suivantes si elles n’existent pas
a. Debug : Par défaut, utilisé sur le poste local du développeur
b. Deploy : utilisé pour le serveur de développement
c. Release : utilisé pour le serveur de production

Pour ajouter une nouvelle configuration, aller dans le gestionnaire de configuration (ci-dessus)

Cliquer sur nouveau puis saisir le nom de la nouvelle configuration (ex : Deploy , copier les paramètres à partir de release)
2) Une fois les 3 configurations crées il suffit de faire un clique droit sur le fichier web.config puis « Ajouter des transformations de configuration » (Si les fichiers n’ont pas déjà été créés)

3) Modifier les fichiers suivant vos besoins
Exemple : Le cas ou le IIS du serveur de développement est différent du poste du développeur. Il faut déplacer les modules et les handlers.
La section <System.web> du fichier web.config :
<system.web>
<pages theme="Defaut">
<controls>
<add tagPrefix="…" namespace="…" assembly="…"/>
</controls>
</pages>
<httpModules>
<add name="…" type="…, …"/>
</httpModules>
<httpHandlers>
<add verb="*" path="*.aspx" type="…"/>
<add verb="*" path="*.asmx" type="…"/>
</httpHandlers>
<compilation debug="true" targetFramework="4.0">
</compilation>
</system.web>
<system.webServer>
</system.webServer>
La même section dans le fichier Web.Deploy.config :
<?xml version="1.0"?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<system.web xdt:Transform="Replace">
<pages theme="Defaut">
<controls>
<add tagPrefix="…" namespace="…" assembly="…"/>
</controls>
</pages>
<compilation xdt:Transform="RemoveAttributes(debug)" />
</system.web>
<system.webServer xdt:Transform="Replace">
<validation validateIntegratedModeConfiguration="false"/>
<modules>
<add name="…" type="…, …"/>
</modules>
<handlers>
<add name="…" verb="*" path="*.aspx" type="…, …"/>
<add name="…" verb="*" path="….ashx" type="…, …"/>
</handlers>
</system.webServer>
</configuration>
Pour remplacer toute une section il faut ajouter l’élément xdt:Transform="Replace"
Pour supprimer un attribut il faut rajouter xdt:Transform="RemoveAttributes(l’attribut à supprimer)"
4) Pour publier le site, il suffit de choisir le mode de configuration à mettre en place.