Browse Source

Call SaveChangesAsync in AbpAuditingMiddleware

pull/8300/head
liangshiwei 5 years ago
parent
commit
5687277799
  1. 13
      framework/src/Volo.Abp.AspNetCore/Volo/Abp/AspNetCore/Auditing/AbpAuditingMiddleware.cs

13
framework/src/Volo.Abp.AspNetCore/Volo/Abp/AspNetCore/Auditing/AbpAuditingMiddleware.cs

@ -6,6 +6,7 @@ using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.Options;
using Volo.Abp.Auditing;
using Volo.Abp.DependencyInjection;
using Volo.Abp.Uow;
using Volo.Abp.Users;
namespace Volo.Abp.AspNetCore.Auditing
@ -16,16 +17,19 @@ namespace Volo.Abp.AspNetCore.Auditing
protected AbpAuditingOptions AuditingOptions { get; }
protected AbpAspNetCoreAuditingOptions AspNetCoreAuditingOptions { get; }
protected ICurrentUser CurrentUser { get; }
protected IUnitOfWorkManager UnitOfWorkManager { get; }
public AbpAuditingMiddleware(
IAuditingManager auditingManager,
ICurrentUser currentUser,
IOptions<AbpAuditingOptions> auditingOptions,
IOptions<AbpAspNetCoreAuditingOptions> aspNetCoreAuditingOptions)
IOptions<AbpAspNetCoreAuditingOptions> aspNetCoreAuditingOptions,
IUnitOfWorkManager unitOfWorkManager)
{
_auditingManager = auditingManager;
CurrentUser = currentUser;
UnitOfWorkManager = unitOfWorkManager;
AuditingOptions = auditingOptions.Value;
AspNetCoreAuditingOptions = aspNetCoreAuditingOptions.Value;
}
@ -44,7 +48,7 @@ namespace Volo.Abp.AspNetCore.Auditing
try
{
await next(context);
Debug.Assert(_auditingManager.Current != null);
if (_auditingManager.Current.Log.Exceptions.Any())
{
@ -60,6 +64,11 @@ namespace Volo.Abp.AspNetCore.Auditing
{
if (ShouldWriteAuditLog(context, hasError))
{
if (UnitOfWorkManager.Current != null)
{
await UnitOfWorkManager.Current.SaveChangesAsync();
}
await saveHandle.SaveAsync();
}
}

Loading…
Cancel
Save