diff --git a/docs/en/MongoDB.md b/docs/en/MongoDB.md index 1f269e94cb..7fae9c3892 100644 --- a/docs/en/MongoDB.md +++ b/docs/en/MongoDB.md @@ -394,6 +394,7 @@ public class MyCustomMongoDbBulkOperationProvider : IMongoDbBulkOperationProvide { public async Task DeleteManyAsync(IMongoDbRepository repository, IEnumerable entities, + IClientSessionHandle sessionHandle, bool autoSave, CancellationToken cancellationToken) where TEntity : class, IEntity @@ -403,6 +404,7 @@ public class MyCustomMongoDbBulkOperationProvider : IMongoDbBulkOperationProvide public async Task InsertManyAsync(IMongoDbRepository repository, IEnumerable entities, + IClientSessionHandle sessionHandle, bool autoSave, CancellationToken cancellationToken) where TEntity : class, IEntity @@ -411,9 +413,10 @@ public class MyCustomMongoDbBulkOperationProvider : IMongoDbBulkOperationProvide } public async Task UpdateManyAsync(IMongoDbRepository repository, - IEnumerable entities, - bool autoSave, - CancellationToken cancellationToken) + IEnumerable entities, + IClientSessionHandle sessionHandle, + bool autoSave, + CancellationToken cancellationToken) where TEntity : class, IEntity { // Your logic here. diff --git a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/IMongoDbBulkOperationProvider.cs b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/IMongoDbBulkOperationProvider.cs index 1436a7bab7..fda7f291c7 100644 --- a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/IMongoDbBulkOperationProvider.cs +++ b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/IMongoDbBulkOperationProvider.cs @@ -1,4 +1,5 @@ -using System.Collections.Generic; +using MongoDB.Driver; +using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using Volo.Abp.Domain.Entities; @@ -11,6 +12,7 @@ namespace Volo.Abp.MongoDB.Volo.Abp.Domain.Repositories.MongoDB Task InsertManyAsync( IMongoDbRepository repository, IEnumerable entities, + IClientSessionHandle sessionHandle, bool autoSave, CancellationToken cancellationToken ) @@ -19,6 +21,7 @@ namespace Volo.Abp.MongoDB.Volo.Abp.Domain.Repositories.MongoDB Task UpdateManyAsync( IMongoDbRepository repository, IEnumerable entities, + IClientSessionHandle sessionHandle, bool autoSave, CancellationToken cancellationToken ) @@ -27,6 +30,7 @@ namespace Volo.Abp.MongoDB.Volo.Abp.Domain.Repositories.MongoDB Task DeleteManyAsync( IMongoDbRepository repository, IEnumerable entities, + IClientSessionHandle sessionHandle, bool autoSave, CancellationToken cancellationToken ) diff --git a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/MongoDbRepository.cs b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/MongoDbRepository.cs index f24c553509..109aeac8cd 100644 --- a/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/MongoDbRepository.cs +++ b/framework/src/Volo.Abp.MongoDB/Volo/Abp/Domain/Repositories/MongoDB/MongoDbRepository.cs @@ -94,7 +94,7 @@ namespace Volo.Abp.Domain.Repositories.MongoDB if (BulkOperationProvider != null) { - await BulkOperationProvider.InsertManyAsync(this, entities, autoSave, cancellationToken); + await BulkOperationProvider.InsertManyAsync(this, entities, SessionHandle, autoSave, cancellationToken); return; } @@ -188,7 +188,7 @@ namespace Volo.Abp.Domain.Repositories.MongoDB if (BulkOperationProvider != null) { - await BulkOperationProvider.UpdateManyAsync(this, entities, autoSave, cancellationToken); + await BulkOperationProvider.UpdateManyAsync(this, entities, SessionHandle, autoSave, cancellationToken); return; } @@ -292,7 +292,7 @@ namespace Volo.Abp.Domain.Repositories.MongoDB if (BulkOperationProvider != null) { - await BulkOperationProvider.DeleteManyAsync(this, entities, autoSave, cancellationToken); + await BulkOperationProvider.DeleteManyAsync(this, entities, SessionHandle, autoSave, cancellationToken); return; }