3

我看过相当多的文章/帖子建议在使用 EF 时每个请求不要有多个上下文。

有第二个上下文用于记录目的是否有效,例如“用户 x 做了 y”、“从 z 登录失败”等。

这背后的基本原理是,即使在使用“主要”上下文时出现错误,我也希望记录这些错误,即。外键问题等

有没有其他方法可以做到这一点,或者如果我沿着这条路走,有什么可以尝试避免的吗?

4

1 回答 1

4

如果您的应用程序逻辑确实需要它们,您总是可以拥有更多的上下文实例,并且即使主上下文中的数据无效,也可以将日志持久化到数据库的能力可以被认为是这种情况。您只需要确保您的更新不会在同一个事务中运行(它们也必须使用不同的数据库连接) - 这应该是默认行为,除非您使用TransactionScope.

于 2012-08-28T08:25:56.763 回答