并发修改失败修改为异常抛出
This commit is contained in:
@@ -1,8 +1,11 @@
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Linq.Expressions;
|
using System.Linq.Expressions;
|
||||||
|
using System.Text;
|
||||||
|
using Microsoft.Extensions.Logging;
|
||||||
using SqlSugar;
|
using SqlSugar;
|
||||||
using Volo.Abp;
|
using Volo.Abp;
|
||||||
using Volo.Abp.Auditing;
|
using Volo.Abp.Auditing;
|
||||||
|
using Volo.Abp.Data;
|
||||||
using Volo.Abp.Domain.Entities;
|
using Volo.Abp.Domain.Entities;
|
||||||
using Volo.Abp.Domain.Repositories;
|
using Volo.Abp.Domain.Repositories;
|
||||||
using Volo.Abp.Linq;
|
using Volo.Abp.Linq;
|
||||||
@@ -374,9 +377,17 @@ namespace Yi.Framework.SqlSugarCore.Repositories
|
|||||||
{
|
{
|
||||||
if (typeof(TEntity).IsAssignableTo<IHasConcurrencyStamp>())//带版本号乐观锁更新
|
if (typeof(TEntity).IsAssignableTo<IHasConcurrencyStamp>())//带版本号乐观锁更新
|
||||||
{
|
{
|
||||||
int num = await (await GetDbSimpleClientAsync())
|
try
|
||||||
.Context.Updateable(updateObj).ExecuteCommandWithOptLockAsync();
|
{
|
||||||
return num>0;
|
int num = await (await GetDbSimpleClientAsync())
|
||||||
|
.Context.Updateable(updateObj).ExecuteCommandWithOptLockAsync(true);
|
||||||
|
return num>0;
|
||||||
|
}
|
||||||
|
catch (VersionExceptions ex)
|
||||||
|
{
|
||||||
|
|
||||||
|
throw new AbpDbConcurrencyException($"{ex.Message}[更新失败:ConcurrencyStamp不是最新版本],entityInfo:{updateObj}", ex);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return await (await GetDbSimpleClientAsync()).UpdateAsync(updateObj);
|
return await (await GetDbSimpleClientAsync()).UpdateAsync(updateObj);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user