从SaveChanges()引发异常时,避免使用IDbCommandTreeInterceptor保存审计日志

时间:2017-03-15 10:52:36

标签: c# entity-framework entity-framework-6 audit audit-trail

我使用的是Entity Framework(EF)版本6.1.3。出于审计目的,我使用IDbCommandTreeInterceptor(实现TreeCreated()函数)来获取EF更改跟踪器数据以进行记录。

例如,考虑我要删除实体的场景。使用适当的实体状态调用SaveChanges()。一旦调用它,就会调用TreeCreated()并记录要删除的实体。现在,如果SaveChanges()抛出异常(无论出于何种原因),我已经有了一个审计日志,表示实体已被删除。

我只想在SaveChanges()调用EF成功时才从TreeCreated()中记录数据。我怎么能这样做?

谢谢!

0 个答案:

没有答案