Microsoft.SqlServer.Smo 问题

Posted

技术标签:

【中文标题】Microsoft.SqlServer.Smo 问题【英文标题】:Microsoft.SqlServer.Smo issue 【发布时间】:2012-04-30 08:07:40 【问题描述】:

我有一个 .NET 2.0 项目,当我尝试编译一些使用 SMO 的项目时出现以下错误:

无法解析主要参考“Microsoft.SqlServer.Smo, Version=9.0.242.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL”,因为它间接依赖于框架程序集“System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 在当前目标框架中无法解决。 ".NETFramework,Version=v2.0"。

要解决此问题,请删除引用“Microsoft.SqlServer.Smo, Version=9.0.242.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL”或将您的应用程序重新定位到包含“System.核心,版本=3.5.0.0,文化=中性,PublicKeyToken=b77a5c561934e089"。

有人可以帮忙吗?因此,我不想将项目迁移到 .NET 3.5。

谢谢

【问题讨论】:

Microsoft.SqlServer.Smo could not be resolved because it has an indirect dependency on the framework assembly System.Core, Version=3.5.0.0 你可能不走运。错误消息基本上表明需要 .NET 3.5。 social.msdn.microsoft.com/Forums/en-US/sqlsmoanddmo/thread/… You can download an earlier version of SMO (2005) here... 我使用的 dll 的运行时版本 = v2.0.50727。它构建为 .NET 2.0 程序集。它是兼容的,我没有任何问题,直到,我猜,我安装了 Visual Studio 2010 SP1...如果不是这种情况,我不会发布问题。 【参考方案1】:

正如异常所说,当前参考程序集需要 .NET 3.5。您必须降级支持 .NET 2.0 的 Microsoft.SqlServer.Smo。

【讨论】:

以上是关于Microsoft.SqlServer.Smo 问题的主要内容,如果未能解决你的问题,请参考以下文章

指数数组的边界之外。 (Microsoft.SqlServer.smo)

无法加载文件或程序集 'Microsoft.SqlServer.Smo,版本 = 10.0.0

SQL Server 无效版本:15 (Microsoft.SqlServer.Smo)

索引超出了数组界限(Microsoft.SqlServer.Smo)

索引超出了数组界限(Microsoft.SqlServer.Smo)

为啥sqlserver 数据库还原不成功?