From 8bb00671118d60424e8cac062c6ece9c98d10d49 Mon Sep 17 00:00:00 2001
From: maliming <6908465+maliming@users.noreply.github.com>
Date: Mon, 27 Jul 2020 09:04:31 +0800
Subject: [PATCH] Added SaveChangesOnDbContextAsync method to the
IEfCoreDbContext.
Fix #4659
---
.../Volo/Abp/EntityFrameworkCore/AbpDbContext.cs | 8 ++++++++
.../Volo/Abp/EntityFrameworkCore/IEfCoreDbContext.cs | 7 ++++++-
2 files changed, 14 insertions(+), 1 deletion(-)
diff --git a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpDbContext.cs b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpDbContext.cs
index adfb530ce2..844a8da5f3 100644
--- a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpDbContext.cs
+++ b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpDbContext.cs
@@ -182,6 +182,14 @@ namespace Volo.Abp.EntityFrameworkCore
}
}
+ ///
+ /// This method will call the DbContext method directly of EF Core, which doesn't apply concepts of abp.
+ ///
+ public virtual Task SaveChangesOnDbContextAsync(bool acceptAllChangesOnSuccess, CancellationToken cancellationToken = default)
+ {
+ return base.SaveChangesAsync(acceptAllChangesOnSuccess, cancellationToken);
+ }
+
public virtual void Initialize(AbpEfCoreDbContextInitializationContext initializationContext)
{
if (initializationContext.UnitOfWork.Options.Timeout.HasValue &&
diff --git a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/IEfCoreDbContext.cs b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/IEfCoreDbContext.cs
index 761e15b6f2..931cbd6d04 100644
--- a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/IEfCoreDbContext.cs
+++ b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/IEfCoreDbContext.cs
@@ -24,6 +24,11 @@ namespace Volo.Abp.EntityFrameworkCore
Task SaveChangesAsync(CancellationToken cancellationToken = default);
+ ///
+ /// This method will call the DbContext method directly of EF Core, which doesn't apply concepts of abp.
+ ///
+ Task SaveChangesOnDbContextAsync(bool acceptAllChangesOnSuccess, CancellationToken cancellationToken = default);
+
DbSet Set()
where T: class;
@@ -50,7 +55,7 @@ namespace Volo.Abp.EntityFrameworkCore
void AttachRange([NotNull] IEnumerable