我想将SQL2008支持添加到.NET 2.0应用程序。但是,我的独特之处在于某些用户仍然会使用SQL2005,并且我不想要求他们安装SQL2008客户端组件。VS2005配置“回退”DLL
我需要SQL2008的实际DLL集不同于SQL2005。代码可以保持不变。
波顿线,我需要在VS2005的方式(或手动编辑组件文件)说:
如果用户有DLL_1 V2,DLL_2 v2和DLL_3 V2选用它们。如果不是,请使用DLL_1 v1和DLL_2 v1。
我会研究使用反射来加载DLL,这听起来像是除了需要SQL 2008客户端组件之外的唯一选项。
至于重新分配DLL,我没有读取许可证。那里有一些可疑的术语适用于我们(例如托管软件)。另外,这是一个更复杂的问题,因为我们的客户数据非常敏感,所以他们会通过广泛的审批流程来允许安装任何东西,比如我们包含的DLL。
感谢您的帮助!
感谢您的想法!然而,我们仍然不是那里...
不,用户不选择他们安装到哪个数据库版本。目的是允许SQL2005和/或SQL2008,即使在相同的安装。例如,我们有一个管理应用程序允许用户跨不同的SQL服务器管理数据库实例。
我意识到我们可以添加一个对话框来选择是否需要SQL2008支持。但是,这会更多地扩展我们的测试矩阵,这正是我们试图避免的。
我相信我确实需要直接引用DLL。我对数据库做了很多工作,而不仅仅是连接和查询。
我需要的DLL是:
- Microsoft.SqlServer.ConnectionInfo
- Microsoft.SqlServer.Management.Sdk.Sfc
- Microsoft.SqlServer.Smo
- Microsoft.SqlServer .SmoExtended
- Microsoft.SqlServer.SqlEnum
任何其他想法,想法?