业务需求:需要读取数据库中的所有库,得到库之后可以再做后续操作.(win 7 vs2010 sqlserver2008r2)
在读取数据库名的时候,就需要用到Microsoft.SqlServer.Smo.dll.
SMO简介:
SQL Server 管理对象 (SMO) 是针对 Microsoft
SQL Server 的编程管理设计的对象。 可以使用
SMO 生成自定义 SQL Server 管理应用程序。 (https://msdn.microsoft.com/zh-cn/library/ms162557.aspx)
(1) 第一个遇到的问题就是在添加引用时 在下图找不到Microsoft.SqlServer.Smo
此时可以点击浏览,可以尝试 在 C:\Program Files (x86)\Microsoft SQL Server\100\SDK\Assemblies
目录下看有没有改dll,如果有添加,没有的话文章最后会提供链接,下载 安装文件,安装完应该就可以了
2,在上一步找到Microsoft.SqlServer.Smo.dll,调试,
因为在连接数据库是需要用到 ServerConnection类,而此时
这是还是在第一步中的那个目录下,找到Microsoft.SqlServer.ConnectionInfo.dll,添加.错误信息消失.
3
经过前两步后,貌似没问题了,但是点击调试后: 又出现 Microsoft.SqlServer.Management.Sdk.Sfc引用问题
此时再去之前的那个目录下找,但是没有找到.于是百度之...是在msdn上找到(https://social.msdn.microsoft.com/Forums/zh-CN/5abfbb57-dac9-4039-b121-ae21c9b9352c/could-not-load-file-or-assembly-microsoftsqlservermanagementsdksfc-version10000?forum=vssetup)
下载那三个文件,然后安装,安装过程中,有提示说已经安装高版本文件,如果则不需要安装该文件了.我是在装了一个后,就看到需要的dll了,所以其他的没有再安装
最后调试: