Ignorer les liens de navigationAccueil : Introduction au Framework .NET : Architecture d'une application .NET : Gestion du versioning Ignorer les liens de navigation
Accueil
Introduction au Framework .NETDévelopper Introduction au Framework .NET
Le langage C#Développer Le langage C#
Programmation orientée objetsDévelopper Programmation orientée objets
CollectionsDévelopper Collections
ADO.NETDévelopper ADO.NET
LINQDévelopper LINQ
ASP.NETDévelopper ASP.NET
Workflow FoundationDévelopper Workflow Foundation
Besoins de prestationDévelopper Besoins de prestation

Gestion du versioning

Par défaut, un exécutable charge l’assemblage qui est spécifié dans la référence. Autrement dit, si un exécutable a été compilé pour utiliser un assemblage version 2.0.0.0 il charge cette version même si un assemblage avec un niveau de version supérieure existe. Ce comportement n’est pas forcément celui que l’on souhaite. En effet, si l’assemblage de version supérieure est un correctif, il faut pouvoir forcer l’exécutable à choisir la version qui n’est pas celle qui est spécifiée dans la référence sans redéployer l’application.

Pour mettre en œuvre cette fonctionnalité, on suppose que deux versions d’un même assemblage sont dans le GAC.

Formation C# aix-en-provence

Pour configurer l’exécutable pour qu’il charge l’assemblage en version 3 au lieu de la version 2, utilisez la procédure suivante.

formation C# marseille
Formation C# PACA
Formation VB.NET Aix-en-provence

Remarquons que la version requise permet de spécifier un intervalle.

Un fichier qui porte le nom de l’exécutable suivi de .config vient d’être crée dans le dossier de l’application. Il contient les informations suivantes :

<?xml version="1.0"?>

<configuration>

  <runtime>

    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">

      <dependentAssembly>

        <assemblyIdentity name="CalculatriceDLL" publicKeyToken="1d15b8f772a49f60" />

        <publisherPolicy apply="yes" />

        <bindingRedirect oldVersion="2.0.0.0" newVersion="3.0.0.0" />

      </dependentAssembly>

    </assemblyBinding>

  </runtime>

</configuration>

L’outil graphique que nous avons utilisé précédemment nous a facilité la création du fichier de configuration.