我正在尝试在PowerShell 2及更高版本中实例化Microsoft.SqlServer.Management.Smo.Server。我安装了SQL Server 2012和2014。当我调用以下命令时,我得到一个含糊的类型名称错误。
[Microsoft.SqlServer.Management.Smo.Server]$srv = New-Object "Microsoft.SqlServer.Management.Smo.Server" $serverInstance
结果是有关类型名称不明确的错误,因为安装了两个版本的SMO:
我尝试了add-type和其他方法来加载特定的程序集,但是仍然存在歧义。
解决方法可能是使用get-item而不是new-object,尽管我还没有对更改进行完整的测试。
如何在PowerShell中解析此含糊的类型名称?
最佳答案
由于PetSerAl通常将答案发布为注释(如果他们发布答案,我将承认并删除它):
New-Object 'Microsoft.SqlServer.Management.Smo.Server, Microsoft.SqlServer.Smo, Version=12.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' $serverInstance
关于sql-server - 如何在PowerShell中解析模棱两可的类型名称?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35230833/