From 1ce6f8cdcfb43d1eec0614d857b6e540da298e98 Mon Sep 17 00:00:00 2001 From: maliming <6908465+maliming@users.noreply.github.com> Date: Tue, 16 Jun 2020 15:57:33 +0800 Subject: [PATCH] Change UOW Timeout property type to int?. Resolve #4355 --- .../Volo/Abp/EntityFrameworkCore/AbpDbContext.cs | 6 +++--- .../Volo/Abp/Uow/AbpUnitOfWorkDefaultOptions.cs | 6 +++--- .../src/Volo.Abp.Uow/Volo/Abp/Uow/AbpUnitOfWorkOptions.cs | 8 ++++---- .../Volo.Abp.Uow/Volo/Abp/Uow/IAbpUnitOfWorkOptions.cs | 4 ++-- .../src/Volo.Abp.Uow/Volo/Abp/Uow/UnitOfWorkAttribute.cs | 6 +++--- .../Volo/Abp/Uow/UnitOfWorkManagerExtensions.cs | 8 ++++---- 6 files changed, 19 insertions(+), 19 deletions(-) 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 2c49f6408a..051e15ded0 100644 --- a/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpDbContext.cs +++ b/framework/src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/AbpDbContext.cs @@ -118,7 +118,7 @@ namespace Volo.Abp.EntityFrameworkCore modelBuilder.SetDatabaseProvider(provider.Value); } } - + protected virtual EfCoreDatabaseProvider? GetDatabaseProviderOrNull(ModelBuilder modelBuilder) { switch (Database.ProviderName) @@ -187,7 +187,7 @@ namespace Volo.Abp.EntityFrameworkCore Database.IsRelational() && !Database.GetCommandTimeout().HasValue) { - Database.SetCommandTimeout(initializationContext.UnitOfWork.Options.Timeout.Value.TotalSeconds.To()); + Database.SetCommandTimeout(initializationContext.UnitOfWork.Options.Timeout.Value); } ChangeTracker.CascadeDeleteTiming = CascadeTiming.OnSaveChanges; @@ -627,4 +627,4 @@ namespace Volo.Abp.EntityFrameworkCore } } } -} \ No newline at end of file +} diff --git a/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/AbpUnitOfWorkDefaultOptions.cs b/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/AbpUnitOfWorkDefaultOptions.cs index 02d80e82a5..d0322b1e6e 100644 --- a/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/AbpUnitOfWorkDefaultOptions.cs +++ b/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/AbpUnitOfWorkDefaultOptions.cs @@ -4,7 +4,7 @@ using System.Data; namespace Volo.Abp.Uow { //TODO: Implement default options! - + /// /// Global (default) unit of work options /// @@ -17,7 +17,7 @@ namespace Volo.Abp.Uow public IsolationLevel? IsolationLevel { get; set; } - public TimeSpan? Timeout { get; set; } + public int? Timeout { get; set; } internal AbpUnitOfWorkOptions Normalize(AbpUnitOfWorkOptions options) { @@ -49,4 +49,4 @@ namespace Volo.Abp.Uow } } } -} \ No newline at end of file +} diff --git a/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/AbpUnitOfWorkOptions.cs b/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/AbpUnitOfWorkOptions.cs index a8f3f75a11..8b94c0be8a 100644 --- a/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/AbpUnitOfWorkOptions.cs +++ b/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/AbpUnitOfWorkOptions.cs @@ -12,14 +12,14 @@ namespace Volo.Abp.Uow public IsolationLevel? IsolationLevel { get; set; } - public TimeSpan? Timeout { get; set; } + public int? Timeout { get; set; } public AbpUnitOfWorkOptions() { - + } - public AbpUnitOfWorkOptions(bool isTransactional = false, IsolationLevel? isolationLevel = null, TimeSpan? timeout = null) + public AbpUnitOfWorkOptions(bool isTransactional = false, IsolationLevel? isolationLevel = null, int? timeout = null) { IsTransactional = isTransactional; IsolationLevel = isolationLevel; @@ -36,4 +36,4 @@ namespace Volo.Abp.Uow }; } } -} \ No newline at end of file +} diff --git a/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/IAbpUnitOfWorkOptions.cs b/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/IAbpUnitOfWorkOptions.cs index 1f63a12b6d..bbbb2d3a5e 100644 --- a/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/IAbpUnitOfWorkOptions.cs +++ b/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/IAbpUnitOfWorkOptions.cs @@ -9,6 +9,6 @@ namespace Volo.Abp.Uow IsolationLevel? IsolationLevel { get; } - TimeSpan? Timeout { get; } + int? Timeout { get; } } -} \ No newline at end of file +} diff --git a/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/UnitOfWorkAttribute.cs b/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/UnitOfWorkAttribute.cs index 2dee2cd390..936b2dbb8b 100644 --- a/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/UnitOfWorkAttribute.cs +++ b/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/UnitOfWorkAttribute.cs @@ -22,7 +22,7 @@ namespace Volo.Abp.Uow /// Timeout of UOW As milliseconds. /// Uses default value if not supplied. /// - public TimeSpan? Timeout { get; set; } + public int? Timeout { get; set; } /// /// If this UOW is transactional, this option indicated the isolation level of the transaction. @@ -39,7 +39,7 @@ namespace Volo.Abp.Uow public UnitOfWorkAttribute() { - + } public UnitOfWorkAttribute(bool isTransactional) @@ -53,7 +53,7 @@ namespace Volo.Abp.Uow IsolationLevel = isolationLevel; } - public UnitOfWorkAttribute(bool isTransactional, IsolationLevel isolationLevel, TimeSpan timeout) + public UnitOfWorkAttribute(bool isTransactional, IsolationLevel isolationLevel, int timeout) { IsTransactional = isTransactional; IsolationLevel = isolationLevel; diff --git a/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/UnitOfWorkManagerExtensions.cs b/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/UnitOfWorkManagerExtensions.cs index a0c52a49f4..f4f720095f 100644 --- a/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/UnitOfWorkManagerExtensions.cs +++ b/framework/src/Volo.Abp.Uow/Volo/Abp/Uow/UnitOfWorkManagerExtensions.cs @@ -8,11 +8,11 @@ namespace Volo.Abp.Uow { [NotNull] public static IUnitOfWork Begin( - [NotNull] this IUnitOfWorkManager unitOfWorkManager, + [NotNull] this IUnitOfWorkManager unitOfWorkManager, bool requiresNew = false, bool isTransactional = false, - IsolationLevel? isolationLevel = null, - TimeSpan? timeout = null) + IsolationLevel? isolationLevel = null, + int? timeout = null) { Check.NotNull(unitOfWorkManager, nameof(unitOfWorkManager)); @@ -40,4 +40,4 @@ namespace Volo.Abp.Uow unitOfWorkManager.TryBeginReserved(reservationName, new AbpUnitOfWorkOptions()); } } -} \ No newline at end of file +}