c# - 将 SMO 应用程序部署到未安装 SQL Server 2008 的工作站

标签 c# .net sql-server vb.net replication

我正在尝试在未安装 SQL Server 的工作站上部署使用 SMO 的应用程序。应用程序连接到的实例是 SQL Server 2008。应用程序失败并显示:

无法加载文件或程序集“Microsoft.SqlServer.Replication,版本 10.0.0.0,Culture=neutral,PublicKeyToken=89845cdc8080cc91”或其依赖项之一。试图加载格式不正确的程序。

有问题的程序集与我的应用程序以及 system32 位于相同的路径中。我在 Windows 7 64 位机器上运行它。我从 2008 SMO redist 下载页面运行了 SQL Native Client、CLR 和 SMO MSI。

此应用在连接到 SQL Server 2005 时运行良好。

什么给了?

最佳答案

在我看来,您在项目中引用的是 SMO 版本 10,但您尝试将应用程序部署到的客户端计算机可能正在运行 SMO 版本 9。我遇到了同样的问题,并更新了我的项目引用以引用 SMO版本 9。我还将 SMO 对象设置为 copy local = true 以确保在客户端计算机上引用了正确的程序集。

关于c# - 将 SMO 应用程序部署到未安装 SQL Server 2008 的工作站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3044711/

相关文章:

c# - 当关闭并从另一个类引用时,表单不会变为 null

c# - Xamarin -> System.Reflection.Assembly.GetExecutingAssembly 不起作用

c# - 维护对 Assembly 对象的引用以避免不必要的 Assembly.LoadFrom 调用是好还是坏?

sql-server - TSQL XML - 在交叉应用时过滤节点 LIKE 'x'

sql - 如何查询存储为文本的 XML?

sql-server - SQL Server 2014 合并重叠的日期范围

c# - 通过触摸并按住 Windows 7 触摸屏设备禁用右键单击

c# - 如何使用 CMake 构建 C# DLL?

c# - 如何永久显示放置的图像

c# - 带有 Windows API 代码包的 Windows XP 上的 EntryPointNotFoundException