Partager via


Numéros de version de l'assembly principal et des assemblys satellites localisés

La classe SatelliteContractVersionAttribute fournit la prise en charge du versioning pour un assembly principal qui utilise des ressources localisées par l'intermédiaire du gestionnaire des ressources.L'application de SatelliteContractVersionAttribute à l'assembly principal d'une application vous permet de mettre à jour et de redéployer l'assembly sans mettre à jour ses assemblys satellites.Par exemple, vous pouvez utiliser la classe SatelliteContractVersionAttribute avec un Service Pack qui n'introduit pas de nouvelles ressources sans régénérer et redéployer vos assemblys satellites.Pour que vos ressources localisées soient disponibles, la version de contrat satellite de votre assembly principal doit correspondre à la classe AssemblyVersionAttribute de vos assemblys satellites.Vous devez spécifier un numéro de version exact dans la classe SatelliteContractVersionAttribute (les caractères génériques, tels que "*" ne sont pas autorisés).Pour plus d'informations, consultez Récupération de ressources dans des applications de bureau.

Mise à jour d'assemblys

La classe SatelliteContractVersionAttribute vous permet de mettre à jour un assembly principal sans avoir à mettre à jour votre assembly satellite ou vice-versa.Lorsque l'assembly principal est mis à jour, son numéro de version est modifié.Si vous souhaitez continuer à utiliser les assemblys satellites existants, vous devez changer le numéro de version de l'assembly principal, mais conserver le même numéro de version de contrat satellite.Par exemple, dans votre première version d'une application, le numéro de version de l'assembly principal est 1.0.0.0.Le numéro de version de contrat satellite et le numéro de version de l'assembly satellite sont également 1.0.0.0.Si vous avez besoin de mettre à jour votre assembly principal pour un Service Pack, vous pouvez modifier la version de l'assembly et utiliser le numéro 1.0.0.1, tout en continuant d'utiliser le numéro 1.0.0.0 comme version de contrat satellite et version de l'assembly satellite.

Si vous avez besoin de mettre à jour un assembly satellite, sans pour autant mettre à jour votre assembly principal, vous devez modifier le AssemblyVersionAttribute de l'assembly satellite.Vous devrez joindre à votre assembly satellite un assembly de stratégie qui indique que votre nouvel assembly satellite est compatible avec votre ancien.Pour plus d'informations sur les stratégies, consultez Méthode de localisation des assemblys par le runtime.

Le code qui suit indique comment définir le numéro de version de contrat satellite.Ce code peut être placé soit dans un script de génération, soit dans le fichier AssemblyInfo.vb ou AssemblyInfo.cs.

<Assembly: SatelliteContractVersionAttribute("4.3.2.1")>
[assembly: SatelliteContractVersionAttribute("4.3.2.1")]

Voir aussi

Concepts

Méthode de localisation des assemblys par le runtime

Définition des attributs d'assembly

Sécurité et assemblys satellites localisés

Autres ressources

Localisation d'applications

Globalisation et localisation d'applications