使用实体框架恢复数据库中的更改

Posted

技术标签:

【中文标题】使用实体框架恢复数据库中的更改【英文标题】:Revert the changes in database using Entity Framework 【发布时间】:2016-06-02 09:13:34 【问题描述】:

我使用 SQL Server 作为我的后端数据库和 Entity Framework 6 来访问它。

我想通过一种方法撤消对数据库所做的所有更改。该方法多次调用 4 个不同的数据库,因此调用了 4 个不同的上下文。我无法跟踪更改以在最后还原它们。

我知道context.ChangeTracker.Entries() 会记录数据库更改。但是我无法使用它,因为一旦上下文超出范围,更改就会丢失。而且我需要在访问所有 4 个数据库后还原方法末尾的更改。

【问题讨论】:

【参考方案1】:

您应该使用transactionScope 或beginTransaction,here 您可以获得有关这两个主题的一些基本信息以帮助您入门,here 您可以了解它们之间的区别,这将帮助您选择正确的主题给你。

【讨论】:

以上是关于使用实体框架恢复数据库中的更改的主要内容,如果未能解决你的问题,请参考以下文章

使用 EF 迁移历史表中的二进制数据恢复 mysqldump

使用更改的权限恢复数据库

从众多实体中恢复一个获取的实体——核心数据

应用从后台恢复时核心数据实体消失

当管理面板中的“设置”已更改以准备转移到实时站点时,如何恢复 wordpress?

在方向更改时恢复列表视图中的项目和滚动位置