Browse Source

#1403 Refactor UnitOfWorkManager.

pull/1406/head
Halil İbrahim Kalkan 7 years ago
parent
commit
3b2dae6f49
  1. 12
      framework/src/Volo.Abp.Uow/Volo/Abp/Uow/UnitOfWorkManager.cs

12
framework/src/Volo.Abp.Uow/Volo/Abp/Uow/UnitOfWorkManager.cs

@ -4,19 +4,19 @@ using Volo.Abp.DependencyInjection;
namespace Volo.Abp.Uow namespace Volo.Abp.Uow
{ {
public class UnitOfWorkManager : IUnitOfWorkManager, ISingletonDependency public class UnitOfWorkManager : IUnitOfWorkManager, ITransientDependency
{ {
public IUnitOfWork Current => GetCurrentUnitOfWork(); public IUnitOfWork Current => GetCurrentUnitOfWork();
private readonly IServiceProvider _serviceProvider; private readonly IHybridServiceScopeFactory _serviceScopeFactory;
private readonly IAmbientUnitOfWork _ambientUnitOfWork; private readonly IAmbientUnitOfWork _ambientUnitOfWork;
public UnitOfWorkManager( public UnitOfWorkManager(
IServiceProvider serviceProvider, IAmbientUnitOfWork ambientUnitOfWork,
IAmbientUnitOfWork ambientUnitOfWork) IHybridServiceScopeFactory serviceScopeFactory)
{ {
_serviceProvider = serviceProvider;
_ambientUnitOfWork = ambientUnitOfWork; _ambientUnitOfWork = ambientUnitOfWork;
_serviceScopeFactory = serviceScopeFactory;
} }
public IUnitOfWork Begin(UnitOfWorkOptions options, bool requiresNew = false) public IUnitOfWork Begin(UnitOfWorkOptions options, bool requiresNew = false)
@ -97,7 +97,7 @@ namespace Volo.Abp.Uow
private IUnitOfWork CreateNewUnitOfWork() private IUnitOfWork CreateNewUnitOfWork()
{ {
var scope = _serviceProvider.CreateScope(); var scope = _serviceScopeFactory.CreateScope();
try try
{ {
var outerUow = _ambientUnitOfWork.UnitOfWork; var outerUow = _ambientUnitOfWork.UnitOfWork;

Loading…
Cancel
Save