By default .NET looks for the exact assembly version that we reference in the provider. But, we do not do anything that locks you into that. Try adding a runtime section to your application's config file that redirects the assembly version. For example, the EntitySpaces Beta 2007.v0 MySQL provider references Connector/NET 5.0.3. If you add this after </configSections>, then you can use Connector/NET 5.0.5 downloaded from the MySQL site.
<runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <!-- Redirect MySQL Connector --> <assemblyIdentity name="MySql.Data" publicKeyToken="c5687fc88969c44d" culture="neutral" /> <bindingRedirect oldVersion="5.0.0.0-5.0.4.0" newVersion="5.0.5.0"/> </dependentAssembly> </assemblyBinding></runtime>
Thx to bigjoe714 for this post on getting the technique to work for ASP.NET config files by removing the "xmlns=..." from <configuration>.
http://community.entityspaces.net/forums/thread/3175.aspx
David Neal Parsonswww.entityspaces.net
Here is an example of assembly redirection using VistaDB:
<runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <!-- Redirect VistaDB Connector --> <assemblyIdentity name="VistaDB.NET20" publicKeyToken="dfc935afe2125461" culture="neutral" /> <bindingRedirect oldVersion="3.20.1.0-3.20.1.29" newVersion="3.20.1.30"/> </dependentAssembly> </assemblyBinding> </runtime>
As of ES 2009.1.0803.0 Alpha you can use the same technique with Sybase.
<runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <!-- Redirect Sybase Connector --> <assemblyIdentity name="iAnywhere.Data.SQLAnywhere" publicKeyToken="f222fc4333e0d400" culture="neutral" /> <bindingRedirect oldVersion="11.0.0.0-11.0.1.20441" newVersion="11.0.1.20442"/> </dependentAssembly> </assemblyBinding> </runtime>