VS2005 Setting up a backup DLL

I am trying to add SQL2008 support to a .NET 2.0 application. However, my unique constant is that some users will still use SQL2005, and I do not want to require them to install SQL2008 client components.

The actual set of DLLs required for SQL2008 is different from SQL2005. The code may remain the same.

Botton line, I need a way in VS2005 (or manually edit the assembly file) to say:

If the user has DLL_1 v2, DLL_2 v2 and DLL_3 v2, use them. If not, use DLL_1 v1 and DLL_2 v1.


I will consider using reflection to load DLLs, it seems like this is the only option for me, different from the requirements for SQL 2008 client components.

Regarding the redistribution of the DLL, I read the license. There are a couple of dubious terms that apply to us (for example, for hosted software). In addition, this is an even more difficult problem, because our customers' data is very sensitive, so they go through extensive approval procedures to resolve anything, such as the DLLs that we included for installation.

Thanks for the help!


Thanks for the ideas! However, we are still not quite there ...

  • No, the user does not choose which version of DB they install. The goal is to enable SQL2005 and / or SQL2008, even in the same installation. For example, we have an administration application that allows users to manage database instances on different SQL servers.

  • , , , SQL2008. , .

  • , DLL. , .

DLL:

  • Microsoft.SqlServer.ConnectionInfo
  • Microsoft.SqlServer.Management.Sdk.Sfc
  • Microsoft.SqlServer.Smo
  • Microsoft.SqlServer.SmoExtended
  • Microsoft.SqlServer.SqlEnum

, ?

+3
6

DLL, . , , .

, Reflection .

+1

, dll SQL2008?

0

, , , . SQL,.Net , . SMO? .

0

DLL. System.Data.SqlClient , .Net , . System.Data.SqlClient , : .

, , , , , SOAP .Net Remoting. , - db .

0

, DB ? ( , - ). dll bin ?

0

. , , , .

.. , 2005 2008, , . , , , .

, , .

This approach will also allow you to do more than just use a different set of dlls. If in 2005 some things have to be done differently than in 2008, you can implement these differences in your class libraries and the application will not be more sensible.

0
source

All Articles