Partager via


Versioning des composants

Chaque assembly possède un numéro de version composé de quatre parties dans le cadre de son identité. Il est essentiel d'inclure la version dans l'identité pour distinguer différentes versions d'un assembly pour les besoins d'une installation côte à côte.

Ce numéro de version de compatibilité est physiquement représenté par un numéro en quatre parties au format suivant :

MajorVersion.MinorVersion.BuildNumber.Revision.

Les parties du numéro de version sont la version principale, secondaire, de build et de révision. Aucune sémantique n'est appliquée aux parties du numéro de version. Cela signifie que le Common Language Runtime ne déduit ni la compatibilité, ni aucune autre caractéristique d'un assembly à partir de la manière dont le numéro de version est assigné (la version 1.0.0.0 d'un assembly et la version 2.1.0.2 sont des identités complètement différentes du point de vue du chargeur de classe). En tant que développeur, vous êtes libre de changer n'importe quelle partie de ce numéro selon vos besoins. Même si aucune sémantique n'est appliquée au format du numéro de version, chaque entreprise peut juger utile d'établir ses propres conventions sur la manière dont le numéro de version est modifié. Cela permet d'assurer une certaine cohérence au sein d'une entreprise et, par exemple, de déterminer plus facilement de quelle build un assembly particulier est issu. Voici un exemple de convention courante :

Principale ou secondaire. Une modification de la partie principale ou secondaire d'un numéro de version indique un changement incompatible. Dans le cadre de cette convention, la version 2.0.0.0 est considérée comme incompatible avec la version 1.0.0.0. Une modification des types de certains paramètres de méthode ou la suppression d'un type ou d'une méthode constituent des exemples de modification incompatible.

Build. Le numéro de build est généralement utilisé pour faire la distinction entre des builds quotidiennes ou des versions compatibles plus petites.

Révision. Les changements de numéro de révision sont généralement réservés à une build incrémentielle nécessaire pour résoudre un bogue donné. Ce numéro est parfois qualifié de numéro de « correctif logiciel » du fait que le numéro de révision est souvent celui qui est modifié lorsqu'une résolution de bogue spécifique est envoyée à un client.

Un assembly avec le numéro de version de compatibilité 2.0.0.0 est alors considéré comme incompatible avec un assembly dont le numéro de version de compatibilité est 1.0.0.0. De même, le numéro de compatibilité 2.0.2.11 est considéré comme QFE pour le numéro de compatibilité 2.0.2.1.

Voir aussi

Versioning des noms forts | Résumé de l'empaquetage et du déploiement | Annexe A : Informations supplémentaires sur l'empaquetage et le déploiement | Annexe B : Outils d'empaquetage et de déploiement