2009-08-14 6 views
2

Dans Visual Studio, vous pouvez exiger qu'une référence d'assembly corresponde à une version spécifique de l'assembly. Est-il possible (peut-être en éditant directement le fichier csproj ou vbproj dans un éditeur de texte) de référencer une gamme de versions.Ajout d'une référence à un assembly avec une plage spécifique de versions dans Visual Studio

Mon exemple spécifique est que je veux référencer la version 2.5.x de nUnit dans mes projets de test au travail. Les gens exécutent des versions différentes de nUnit, et tout ce qui est dans la version 2.5.x de nUnit devrait suffire pour exécuter nos tests unitaires.

Répondre

3

Dans vos paramètres de compilation, je ne le crois pas.

Vous pouvez toutefois configurer votre application pour rediriger les demandes de chargement d'assembly. Jetez un oeil à Assembly Binding Redirection. Vous pouvez configurer les demandes de chargement pour une version spécifique (ou une gamme de versions) à rediriger vers quelque chose de différent à l'exécution.

Cet exemple est légèrement modifié par MSDN:

<configuration> 
    <runtime> 
     <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
     <dependentAssembly> 
      <assemblyIdentity name="myAssembly" 
           publicKeyToken="32ab4ba45e0a69a1" 
           culture="neutral" /> 
      <bindingRedirect oldVersion="0.0.0.0-99.99.99.99" 
          newVersion="2.0.0.0"/> 
     </dependentAssembly> 
     </assemblyBinding> 
    </runtime> 
</configuration> 

Définissez le nom, les attributs publicKeyToken et newVersion correctement, et vous devriez être bon d'aller.

Questions connexes