实体框架自我跟踪实体 - 在2个数据库之间同步

时间:2012-02-06 16:32:53

标签: entity-framework self-tracking-entities

我在实体框架4中使用自我跟踪实体。我有2个数据库,具有完全相同的模式。但是,一个数据库中的表将被添加到/编辑等(我的意思是数据将被添加/编辑,而不是实际的表定义),并且在当天的某些时刻,我将需要同步此数据库与数据库之间的所有更改。其他数据库。

我可以为它们创建一个单独的上下文。但是,如果我从一个数据库中读取一个大图,我该如何用图表更新另一个数据库?有一个简单的方法吗?

我的数据库模型庞大而复杂且完全相关。因此,通过每个单独的实体并从另一个数据库读取以查看它是否存在,如果需要更新/插入它,然后通过完整的对象图执行此操作将是一项很大的工作!

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

这不是EF的用例。在EF中你必须完全按照你所描述的那样做。自我跟踪实体能够跟踪对这些对象实例的更改 - 他们对随时间推移对自己的数据库所做的更改一无所知,并且他们也不会知道有关第二个数据库状态的任何信息。

尝试查看SQL Server本机功能(包括镜像,事务日志传送或SSIS)和MS Sync框架。根据您的详细要求,这些工具可以更好地为您提供服务。