我们有一个使用 Entity Framework 5 构建的系统,用于创建、编辑和删除数据,但我们遇到的问题是有时 EF 太慢或者根本无法使用实体框架(基于用户参与为表构建数据的视图在数据库中的某些组等中),我们必须使用存储过程来更新数据。
但是我们遇到了一个问题,我们必须将更改保存到 EF 以便将数据保存在数据库中,然后调用存储过程,我们不能使用 ITransactionScope,因为它总是提升为分布式事务和/或在事务期间锁定表以进行选择。
我们还尝试引入一个 DomainEvents 模式,它将事件排队并在保存更改后引发它们,因此我们在数据库中拥有我们需要的数据,但最终我们可能会导致第一部分成功而第二部分失败。
是否有任何好的方法来处理这个问题,或者我们是否需要在这种情况下完全摆脱 EF?