0

大家好,请原谅新手的问题,我是 Microsoft Sync Framework 的新手。我在 Internet 上进行了广泛的研究,以便通过不同版本的 Sync Framework、SQL Server、Sync Services for ADO.NET、SyncAgent 与 SyncOrchestrator 等找到解决这个难题的方法,以及应该怎样做用在什么类型的场景中。不幸的是,在为如何正确编写 ASP.NET 2.0 C# Web 应用程序一整天苦苦挣扎之后,我仍然迷失了方向。

我目前的情况是这样的:我正在为一个大型部门开发应用程序,我不能指望在服务器端安装新东西会获得批准。我坚持使用 SQL Server 2008 并且(我相信),服务器上安装了 Sync Framework 1.0。但是,我可以自由地在将连接到服务器的客户端计算机上安装更高版本。这些将具有 SQL Server 2008 Express(不是 Compact),并且每个都将运行 Web 应用程序。在他们的本地主机 IIS 中。同步模型是集中式的,客户端只会连接到服务器进行双向同步(在星形网络拓扑中,我们是否称其为中心辐射模型?)但不会相互连接(没有点对点) - 同行合作)。

我已经准备好数据库的两侧进行同步(启用更改跟踪,为主键设置 GUID 数据类型等)

同步的核心,使两个节点之间的接口同步的程序,似乎完全是客户端的Web应用程序。对?

问题:如果我想使用 Sync Framework v2.0 或 v2.1,我可以忽略服务器上安装的版本吗?换句话说,服务器端的 Sync Framework 是否还在做某事?SQL Server 上没有安装 Web 应用程序。

不幸的是,我在网上找不到这个相当简单的问题的答案!非常感谢您的帮助!祝你有美好的一天!最诚挚的问候, Zyxy

4

2 回答 2

1

不,您不需要在中央服务器上安装同步框架。您需要的中央数据库只是一个连接字符串。只要您可以使用具有足够权限的登录名访问中央数据库,那么您就不需要在其上安装任何东西。同步应用程序可以在任何地方运行,只要它能够连接到中央服务器。

于 2012-10-05T15:38:02.543 回答
0

取决于您如何构建应用程序。

如果所有同步代码都在您的应用程序上,并且您只需将其指向中央 sql 服务器,则无需在服务器上安装同步框架。

但是,如果您决定使用 WCF,以便在服务器端拥有同步的服务组件,那么您需要在服务器上使用同步框架。您的客户端将拥有服务器端服务的代理,并且部分同步将在 wcf 服务的服务器端执行。

对于客户端的 SQL Express,如果您使用 VS Local Database Cache Project 项目或者您手动针对 SyncAgent/SQLCeClientSyncProvider/DbServerSyncProvider 进行编码,则 SQL Ce 是唯一受支持的客户端数据库。

如果您使用 SQL Express,则必须使用较新的 SyncOrchestrator/SqlSyncProvider 组合,但不使用内置的 SQL 更改跟踪。

于 2012-08-20T05:41:13.460 回答