2010-06-15 27 views
1

Lorsque j'ajoute une référence à mon projet, je souhaite généralement utiliser Version Spécifique = FAUX. C'est parce que notre build automatisé va définir le numéro de version. Je vois que le comportement par défaut est TRUE.Comment modifier la valeur par défaut "Version spécifique" lors de l'ajout d'une référence?

Y a-t-il un moyen de changer cela? Compter sur la modification manuelle de cette valeur est source d'erreurs (et je finis par casser la construction).

Répondre

0

Il n'y a pas moyen de changer la valeur par défaut. Si vous utilisez TFS, vous pouvez probablement appliquer une règle d'archivage, mais je ne suis pas certain qu'une règle d'archivage puisse être appliquée à un fichier .csproj ou .sln.

0

Je dirais que vous ne devriez pas changer la version d'assemblage avec chaque build. Vous devriez utiliser la version du fichier à cette fin. Suzanne Cooke a un joli article de blog expliquant en détail, mais ce résumé est que la version du fichier d'un assemblage ne doit pas nécessairement être la même que la version de l'assemblage et pour les versions, vous avez besoin de la version du fichier tout le temps et pas la version d'assemblage.

Suzanne Cook's blog post

2

Créer un projet AddIn et essayer:

Imports Extensibility 
Imports EnvDTE 
Imports EnvDTE80 
Imports VSLangProj 
Imports VSLangProj80 

Public Class Connect 

    Implements IDTExtensibility2 

    Private _app As DTE2 
    Private WithEvents _RefEvents As ReferencesEvents 

    '''<summary>Implements the constructor for the Add-in object. Place your initialization code within this method.</summary> 
    Public Sub New() 
    End Sub 

    '''<summary>Implements the OnConnection method of the IDTExtensibility2 interface. Receives notification that the Add-in is being loaded.</summary> 
    '''<param name='application'>Root object of the host application.</param> 
    '''<param name='connectMode'>Describes how the Add-in is being loaded.</param> 
    '''<param name='addInInst'>Object representing this Add-in.</param> 
    '''<remarks></remarks> 
    Public Sub OnConnection(ByVal application As Object, ByVal connectMode As ext_ConnectMode, ByVal addInInst As Object, ByRef custom As Array) Implements IDTExtensibility2.OnConnection 
     _app = CType(application, DTE2) 
     _RefEvents = CType(_app.Events.GetObject("VBReferencesEvents"), ReferencesEvents) 
    End Sub 

    '''<summary>Implements the OnDisconnection method of the IDTExtensibility2 interface. Receives notification that the Add-in is being unloaded.</summary> 
    '''<param name='disconnectMode'>Describes how the Add-in is being unloaded.</param> 
    '''<param name='custom'>Array of parameters that are host application specific.</param> 
    '''<remarks></remarks> 
    Public Sub OnDisconnection(ByVal disconnectMode As ext_DisconnectMode, ByRef custom As Array) Implements IDTExtensibility2.OnDisconnection 
    End Sub 

    '''<summary>Implements the OnAddInsUpdate method of the IDTExtensibility2 interface. Receives notification that the collection of Add-ins has changed.</summary> 
    '''<param name='custom'>Array of parameters that are host application specific.</param> 
    '''<remarks></remarks> 
    Public Sub OnAddInsUpdate(ByRef custom As Array) Implements IDTExtensibility2.OnAddInsUpdate 
    End Sub 

    '''<summary>Implements the OnStartupComplete method of the IDTExtensibility2 interface. Receives notification that the host application has completed loading.</summary> 
    '''<param name='custom'>Array of parameters that are host application specific.</param> 
    '''<remarks></remarks> 
    Public Sub OnStartupComplete(ByRef custom As Array) Implements IDTExtensibility2.OnStartupComplete 
    End Sub 

    '''<summary>Implements the OnBeginShutdown method of the IDTExtensibility2 interface. Receives notification that the host application is being unloaded.</summary> 
    '''<param name='custom'>Array of parameters that are host application specific.</param> 
    '''<remarks></remarks> 
    Public Sub OnBeginShutdown(ByRef custom As Array) Implements IDTExtensibility2.OnBeginShutdown 
    End Sub 

    Private Sub _RefEvents_ReferenceAdded(ByVal pReference As Reference) Handles _RefEvents.ReferenceAdded 
     If pReference.Version <> "0.0.0.0" Then 
      CType(pReference, Reference3).SpecificVersion = True 
     End If 
    End Sub 
End Class