我创建了一个C#应用程序,它引用了各种 v11 SQL Server SMO程序集。我通过复制这些文件,在参考文献的属性中使用Copy Local=True
引用它们,然后将它们包含在应用程序的副本中来完成此操作。该应用程序部署到我们公司网络上的50台左右的机器,一些开发者PC,一些服务器。我开始收到错误
无法加载文件或程序集' Microsoft.SqlServer.Management.Sdk.Sfc,Version = 12 .0.0.0, Culture = neutral,PublicKeyToken = 89845dcd8080cc91'或其中一个 依赖。定位程序集的清单定义没有 匹配程序集引用。 (HRESULT异常:0x80131040)
在其中一些服务器上,所以我使用了 v12 DLL并用这个替换了引用,假设它是向后兼容的。这解决了报告上述错误的服务器上的问题,但现在,一些服务器报告错误
无法加载文件或程序集' Microsoft.SqlServer.Management.Sdk.Sfc,Version = 11 .0.0.0, Culture = neutral,PublicKeyToken = 89845dcd8080cc91'或其中一个 依赖。定位程序集的清单定义没有 匹配程序集引用。 (HRESULT异常:0x80131040)
SQL SMO命名空间中的一个或两个其他库也发生了此错误,我已升级了其中的一些。
引用这些DLL在任何服务器上工作的正确方法是什么,无论哪个DLL可用?