我有一个 .NET 3.5 Compact Framework 项目,它使用 RDA 在其移动设备的本地 SqlCe 数据库和远程 MSSql-2008 服务器之间移动数据(它使用 RDA 推送和拉取)。
服务器机器具有用于 RDA 的 sqlcesa35.dll (v3.5.5386.0) 设置的虚拟目录。我们通常在移动设备上安装这些cab,RDA进程没有任何问题:
sqlce.wce5.armv4i.cab
sqlce.repl.wce5.armv4i.cab
现在我正在尝试将此应用程序作为桌面应用程序运行。RDA Pull(下载)一直运行良好。但是 RDA Push(上传)给我带来了一些问题。
这是我在尝试使用 RDA Push 时在桌面应用程序上遇到的异常:
System.Data.SqlServerCe.SqlCeException
客户端代理和服务器代理组件版本不兼容。兼容的版本是:客户端代理版本 3.0 和 3.5 与服务器代理版本 3.5 和客户端代理版本 3.5 与服务器代理版本 3.5。使用客户端和服务器代理的匹配版本重新安装复制组件。[ 35,30,客户端代理版本 = ,服务器代理版本 = ]
我试过复制文件
C:\Program Files\Microsoft SQL Server Compact Edition\v3.5\Desktop\SqlServerCe.dll (v3.5.5692.0)
到 bin\debug
我还尝试将另一个版本的 SqlServerCe.dll (v3.0.5206.0) 复制到 bin\debug。但这只是给了我一个稍微不同的例外:
System.Data.SqlServerCe.SqlCeException [35,30]
我需要使用不同的设置或任何不同的 dll 吗?