我对使用数据库同步的 asp.net 还很陌生。目前,我正在实现一个项目,该项目需要服务器 (SQL Server 2010) <> C# 客户端 (SQLite) 使用更改跟踪进行双向数据库同步。我已经阅读了论坛和 Stack Overflow 中讨论的大部分教程/示例:
http://dotnetvisio.blogspot.com/2013/07/microsoft-change-tracking-sql-server.html
Syncing SQL Server 2008 Databases over HTTP using WCF & Sync Framework
http://msdn.microsoft.com/en-us/library/cc305322.aspx
http://technet.microsoft.com/en-us/library/cc280358(v=sql.105).aspx等等...
然而,我不知道如何在两者之间实现更改跟踪数据库同步:
[SQL Sever Database with Change Tracking enable] <> [WCF Service] <> [WPF Client] <> [SQLite Local Database]
所以我的问题是如何连接和建立与本地数据库同步的连接?非常感谢分步教程。谢谢。
最佳答案
假设您使用 Sync Framework 将两个数据库直接同步在一起,在大多数情况下,您不需要使用 SQL Server 和/或 SQL Server Compact 手动实现更改跟踪组件。最简单的方法是编写一个帮助应用程序来为您处理数据库的范围界定和配置。这将使 Sync Framework 自动创建 Sync Framework 正常工作所需的所有更改跟踪对象(Tables/Functions/StoredProcs)。从 MSDN 查看这篇文章:Walkthrough: Defining Scope and Provisioning
如果您不能使用预配,那么您还有一些工作要做,因为您需要编写自己的所有提供程序。不幸的是,这项任务并不像您期望的那么容易,而且那里的信息也不多。以下是一些可帮助您入门的文章:
http://www.8bit.rs/blog/2009/05/debugging-sql-express-client-sync-provider/
MS's Response that Change Tracking & The Sync Framework are not Directly Compatible
Sync Framework Metadata Services -- 这是关于构建自己的提供程序所需的信息
关于c# - Microsoft Sync Framework 2.1 与 C# 中的更改跟踪服务器和客户端数据库同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21273742/