Skip to content

Commit ec72f60

Browse files
committed
Backport #169 into v3 branch
1 parent b30af90 commit ec72f60

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

src/EntityFrameworkCore.Triggered/Internal/TriggerSessionSaveChangesInterceptor.cs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,12 @@ public InterceptionResult<int> SavingChanges(DbContextEventData eventData, Inter
9090
_triggerSession.CaptureDiscoveredChanges();
9191
_triggerSession.RaiseBeforeSaveCompletedTriggers().GetAwaiter().GetResult();
9292
}
93+
catch
94+
{
95+
// We're aborting the SaveChanges call, delist the trigger session now
96+
DelistTriggerSession(eventData);
97+
throw;
98+
}
9399
finally
94100
{
95101
eventData.Context.ChangeTracker.AutoDetectChangesEnabled = defaultAutoDetectChangesEnabled;
@@ -119,6 +125,12 @@ public async ValueTask<InterceptionResult<int>> SavingChangesAsync(DbContextEven
119125
_triggerSession.CaptureDiscoveredChanges();
120126
await _triggerSession.RaiseBeforeSaveCompletedTriggers(cancellationToken).ConfigureAwait(false);
121127
}
128+
catch
129+
{
130+
// We're aborting the SaveChanges call, delist the trigger session now
131+
DelistTriggerSession(eventData);
132+
throw;
133+
}
122134
finally
123135
{
124136
eventData.Context.ChangeTracker.AutoDetectChangesEnabled = defaultAutoDetectChangesEnabled;

0 commit comments

Comments
 (0)