使用 Microsoft Sync Framework 自动创建客户端架构

Posted

技术标签:

【中文标题】使用 Microsoft Sync Framework 自动创建客户端架构【英文标题】:Automatically Creating Client Schema with Microsoft Sync Framework 【发布时间】:2010-03-02 18:47:36 【问题描述】:

我需要在 .NET 应用程序中制作数据库的本地副本,以便它可以脱机运行。我的服务器数据库是 SQL Server 2005,它正在复制到 SQL Server 2008 Express。

它不必花哨 - 只需从头开始(或删除现有数据库),复制所有表/约束/外键,并从一些表中复制数据。我不介意在我的数据库中保留“模式版本”,以便应用知道其现有模式何时过时。

我一直在研究 Microsoft Sync Framework,看来我必须为我的数据库中的每个表创建一个 SyncTable,坦率地说,这似乎需要太多的工作和维护。这是我在示例中找到的代码:

SyncTable orderDetailSyncTable = new SyncTable("OrderDetail");
orderDetailSyncTable.CreationOption = TableCreationOption.DropExistingOrCreateNewTable;
orderDetailSyncTable.SyncDirection = SyncDirection.Snapshot;
orderDetailSyncTable.SyncGroup = orderSyncGroup;
this.Configuration.SyncTables.Add(orderDetailSyncTable);

我想我可以列出数据库中的所有表并枚举它们,但似乎应该有更好的方法。我是在 Sync Framework 中遗漏了什么,还是有其他东西可以完成这种事情?

【问题讨论】:

【参考方案1】:

我放弃了 Sync Framework;而是使用 SQL Server 管理对象来完成此操作。

http://msdn.microsoft.com/en-us/library/ms162169.aspx

【讨论】:

您对这个开关满意吗?当我正在考虑使用 Sync Framework 时,需要更多反馈,但我也发现设置每个表和/或列以进行同步并不是非常动态的方法。

以上是关于使用 Microsoft Sync Framework 自动创建客户端架构的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Microsoft Sync Framework 在客户端数据库中插入新行

Microsoft Sync Framework同步文件

同步关系数据库时出现 Microsoft Sync 框架问题

Microsoft Sync Framework 1.0 RTM发布了

Microsoft Sync Framework 错误删除外键链接表

Microsoft Sync Framework 2.1 的状态如何