在Winforms中支持SQL Server 2008 R2和2012的SQL Server管理对象
我有一个针对.NET4.5的Windows窗体应用程序。该应用程序提供了使用SQL Server管理对象(SMO)进行编程数据库备份和恢复的功能 该应用程序应同时支持SQL Server 2008 R2和SQL Server 2012的Express Edition,因为它只使用这两个版本中支持的功能 现在,要在项目中引用的SMO程序集(在Winforms中支持SQL Server 2008 R2和2012的SQL Server管理对象,winforms,visual-studio-2012,assemblies,.net-4.5,smo,Winforms,Visual Studio 2012,Assemblies,.net 4.5,Smo,我有一个针对.NET4.5的Windows窗体应用程序。该应用程序提供了使用SQL Server管理对象(SMO)进行编程数据库备份和恢复的功能 该应用程序应同时支持SQL Server 2008 R2和SQL Server 2012的Express Edition,因为它只使用这两个版本中支持的功能 现在,要在项目中引用的SMO程序集(Microsoft.SqlServer.ConnectionInfo、Microsoft.SqlServer.SMO、Microsoft.SqlServer.S
Microsoft.SqlServer.ConnectionInfo、Microsoft.SqlServer.SMO、Microsoft.SqlServer.SmoExtended
等)将位于不同的文件夹中,具体取决于客户端安装的SQL Server版本
SQL Server Express 2008 R2: C:\Program Files\Microsoft SQL Server\100\SDK\Assemblies
SQL Server Express 2012: C:\Program Files\Microsoft SQL Server\110\SDK\Assemblies
如您所见,当客户端运行2008 R2时,程序集将位于100\SDK
文件夹中,而对于那些希望运行SQL Server 2012的程序集,它们将位于110\SDK
文件夹中
因此,如果我引用100\SDK
文件夹,则运行SQL Server 2012的客户端的应用程序将中断,因为它们只有110\SDK
文件夹
那么这种情况通常是如何处理的呢 如果要开发使用SQL Server管理对象(SMO)的应用程序,应在安装SQL Server时选择客户端工具SDK 要在不安装SQL Server的情况下安装客户端Tooks SDK,请从SQL Server功能包安装共享管理对象。 如果要确保在运行应用程序的计算机上安装SQL Server管理对象,可以使用SQL Server功能包中的Shared Management Objects.msi 资料来源: 按照带下划线的段落,我想无论运行的是哪个sql server版本,我都可以在客户端机器上安装公共共享管理对象msi