0

我有一个 .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 吗?

4

1 回答 1

0

我希望这会有所帮助,我昨天遇到了同样的问题,在安装了较新版本的服务器代理后,它终于可以工作了。

Neven(gmail.com 上的 nprelog)

SQL Server Compact 3.5 SP2 发布!SQL Server Compact 3.5(内部版本 3.5.8080.0)已发布到 Web。

SQL Server Compact 3.5 SP2 包括许多新功能,其中包括:

支持 Visual Studio 2010 中的 Transact-SQL 编辑器,可用于运行自由文本 T-SQL 查询和查看查询显示计划以优化查询。将更改跟踪功能公开为应用程序编程接口 (API),即 System.Data.SqlServerCe.SqlCeChangeTracking。新的更改跟踪 API 提供了对表配置、启用和禁用更改跟踪以及访问表的更改跟踪数据的能力。新的程序集版本控制和目录结构使使用私有部署的 SQL Server Compact 应用程序能够从应用程序文件夹中加载 SQL Server Compact 程序集(如果它们的版本高于全局程序集缓存 (GAC) 中的版本)。添加了对使用 ClickOnce 部署部署 64 位版本的 SQL Server Compact 的支持。

  • 产品团队在此处提供了更多详细信息:下载:

Microsoft SQL Server Compact 3.5 Service Pack 2 服务器工具 http://www.microsoft.com/downloads/details.aspx?familyid=5DEEC9D5-C216-446E-A003-5D6026AD19B3&displaylang=en

于 2010-05-13T09:17:58.937 回答