2009-12-04 18 views
0

J'ai une application qui est construite avec ODP.NET 2.111.6.20 - toutes les références dans VS sont définies Version Spécifique à faux, mais quand j'essaye de courir l'application sur une machine qui a seulement 2.111.6.0, il renvoie une erreur indiquant qu'il ne trouve pas l'assembly 2.111.6.20. Comment puis-je faire fonctionner mon application avec n'importe quelle version de ODP.NET 2.111?Comment utiliser une version d'ODP.NET différente de celle avec laquelle j'ai construit?

Répondre

3

Je suppose que l'assembly est fortement signé, donc vous obtenez l'exception. Vous pouvez utiliser binding redirect dans votre fichier app.config:

<runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
     <dependentAssembly> 
      <assemblyIdentity name="ODP.NET" 
           publicKeyToken="PUT THE PUBLIC TOKEN HERE" 
           culture="neutral" /> 
      <bindingRedirect oldVersion="2.111.6.20" 
          newVersion="2.111.6.0" /> 
     </dependentAssembly> 
    </assemblyBinding> 
</runtime>