2010-08-02 6 views
8

nous trouverons la version d'assemblage de Assembly.cs dans chaque bibliothèque.Détails de la version d'assemblage

[assembly: AssemblyVersion("1.0.0.0")] 
[assembly: AssemblyFileVersion("1.0.0.0")] 

Ma question est ce qui est 1.0.0.0 cela signifie?

Merci

+1

duplication possible de [Comment versionnez-vous vos projets?] (Http://stackoverflow.com/questions/142340/how-do-you-version-your-projects) –

+0

son pas –

Répondre

26

Comme indiqué dans le fichier lui-même:

// Version information for an assembly consists of the following four values: 
// 
//  Major Version 
//  Minor Version 
//  Build Number 
//  Revision 
// 
// You can specify all the values or you can default the Build and Revision Numbers 
// by using the '*' as shown below: 
//[assembly: AssemblyVersion("1.0.*")] 
[assembly: AssemblyVersion("1.0.0.0")] 
[assembly: AssemblyFileVersion("1.0.0.0")] 

En changeant ce de la manière suivante:

// You can specify all the values or you can default the Build and Revision Numbers 
// by using the '*' as shown below: 
[assembly: AssemblyVersion("1.0.*")] 
//[assembly: AssemblyVersion("1.0.0.0")] 
//[assembly: AssemblyFileVersion("1.0.0.0")] 

Vous » Vous obtiendrez un auto-set des deux dernières sections (Build Number et Revision). Et cela fonctionne incrémentation automatique comme suit:

  • Build Number: Jours depuis 1.1.2000
  • Revision: secondes depuis minuit divisé par deux

Et last but not least, si vous utilisez Subversion pour SourceControl vous pouvez créer un fichier de modèle (copie du même fichier avec un autre nom) où vous remplacez un endroit comme ceci:

[assembly: AssemblyVersion("1.0.$WCREV$.0")] 

et dans votre cas précompilés de votre projet, vous allez entrer dans quelque chose comme ceci:

SubWCRev "$(ProjectDir)\" "$(ProjectDir)Properties\AssemblyInfo.template.cs" "$(ProjectDir)Properties\AssemblyInfo.cs" 

Pour obtenir votre numéro de révision de Subversion en cours dans les informations de version de votre application.

+3

Petite correction: Révision = Secondes depuis minuit divisé par deux. La raison en est qu'il y a 86400 secondes dans une journée et que les versions sont limitées à des entiers de 16 bits, vous obtenez seulement un maximum de 65535 secondes dans une journée. – Dave

+0

@Dave: Merci, fait une mise à jour. – Oliver

3

version majeure. version mineure. numéro de build. révision

3

De AssemblyInfo.cs, les quatre chiffres signifient:

// Version information for an assembly consists of the following four values: 
// 
//  Major Version 
//  Minor Version 
//  Build Number 
//  Revision 
2

Le numéro de version est constitué de quatre segments; Majeur, Mineur, Construire et Révision. Les deux premiers segments Major et Minor sont le numéro de version que l'utilisateur verra normalement, les changements majeurs sont pour de très grands changements, tandis que les mineurs sont incrémentés pour chaque nouvelle version à l'utilisateur.

Les deux derniers segments, Build et Revision, sont une extension du numéro de version qui s'adresse réellement aux informaticiens. Par défaut, il s'agit du nombre de jours écoulés depuis une date de début aléatoire désignée et de la révision basée sur le nombre de secondes écoulées depuis minuit.

Nous utilisons en fait une version de la date pour la valeur de construction et les libère en un seul jour pour la révision (bien que nous déplaçons probablement cela à notre numéro de révision svn).

Questions connexes