Question

Dans les AssemblyInfo.cs je AssemblyVersion et AssemblyFileVersion.

Normalement, j'incrémenter juste le AssemblyVersion comme celui-ci. 1er chiffre: Changement majeur 2e chiffre: Changement mineur 3 chiffres: corrections de bugs 4éme chiffres: numéro de révision de Subversion

Cependant, je me demande quel est le AssemblyFileVersion pour, et quand dois-je besoin d'augmenter. Devrait-il être le même que le AssemblyVersion?

Dois-je faire un commentaire dehors, si je ne l'utilise pas?

Merci beaucoup pour tout conseil,

Était-ce utile?

La solution

AssemblyVersion est utilisé par la classe .NET chargeur et identifie la version .NET de l'assemblage. AssemblyFileVersion représente la version du fichier contenu dans un bloc standard version_info d'un fichier Windows PE ... en d'autres termes, il représente la version du fichier comme on le voit dans la boîte de dialogue des propriétés du fichier.

Si vous omettez le AssemblyFileVersion, le compilateur par défaut il être le même que le AssemblyVersion.

Autres conseils

En général, la version du fichier est plus précis que la version de montage. Par exemple: System.Windows.Form.dll - Version Assemblée. 2.0.0.0, Version du fichier: 2.0.50727.3053

La version de montage est une information importante quand il est temps de charger un ensemble.

Alors, si vous trouvez un petit bug dans l'un d'entre vous assembly référencé. Vous corriger le bug, mettez à jour la version du fichier, mais vous gardez la même version de montage. L'avantage: vous ne devez pas vos références à réassocier cette assemblée à la nouvelle version et la version du fichier que vous pouvez connaître la version actuelle de votre fichier

.

Les installateurs utiliseront AssemblyFileVersion pour déterminer si écraser un fichier basé sur la version.

Il est important de noter que le changement de AssemblyVersion pour un ensemble qui met en œuvre sérialisation a des conséquences graves en essayant de désérialiser à partir d'une version précédente.

Je ne suis pas un expert, et je ne peux pas être référence à un expert, mais d'après ce que je comprends, grosso modo l'AssemblyVersion est au sujet de la « interface » -> ce que l'ensemble ne rétrocompatibilité etc. Et le AssemblyFileVersion est plus à voir avec la mise en œuvre, qui construisent etc.

Utilisez AssemblyVersion attribut pour spécifier "Dernière Compatible-To" et la version AssemblyFileVersion attribut pour spécifier la version de construction « .

-> http://www.shitalshah.com/blog/IsJeffRichterScrewingUpTheNetVersioning.aspx

// Oh, et une autre chose.

Il y a certaines circonstances (dont je ne suis pas trop clair, comme je l'ai seulement entendu parler d'eux, mais pas vraiment les expérimentés) où si vous essayez de mettre à jour une application avec dll dans le GAC, les anciennes versions de dll gagné « t être remplacées par de nouvelles versions avec le même numéro de version de l'Assemblée, à moins que la version du fichier a changé. (Est-ce la peine assez compliqué? Il est tard ici ...)

AssemblyFileVersion est utilisé pour définir les informations de version dans la ressource Win32 dans votre binaire, celui que vous voyez si vous ouvrez la fenêtre des propriétés du fichier dans l'Explorateur.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top