diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/Auditing/AbpAuditActionFilter.cs b/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/Auditing/AbpAuditActionFilter.cs index d982adb12a..0d45b07fe9 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/Auditing/AbpAuditActionFilter.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/Auditing/AbpAuditActionFilter.cs @@ -29,14 +29,17 @@ public class AbpAuditActionFilter : IAsyncActionFilter, IAbpFilter, ITransientDe { var result = await next(); - if (result.Exception != null && !result.ExceptionHandled) + if (result.Exception != null && !auditLog!.Exceptions.Contains(result.Exception)) { auditLog!.Exceptions.Add(result.Exception); } } catch (Exception ex) { - auditLog!.Exceptions.Add(ex); + if (!auditLog!.Exceptions.Contains(ex)) + { + auditLog!.Exceptions.Add(ex); + } throw; } finally diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/Auditing/AbpAuditPageFilter.cs b/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/Auditing/AbpAuditPageFilter.cs index 6b97ac980a..29d43e7039 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/Auditing/AbpAuditPageFilter.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/Auditing/AbpAuditPageFilter.cs @@ -34,14 +34,17 @@ public class AbpAuditPageFilter : IAsyncPageFilter, IAbpFilter, ITransientDepend { var result = await next(); - if (result.Exception != null && !result.ExceptionHandled) + if (result.Exception != null && !auditLog!.Exceptions.Contains(result.Exception)) { auditLog!.Exceptions.Add(result.Exception); } } catch (Exception ex) { - auditLog!.Exceptions.Add(ex); + if (!auditLog!.Exceptions.Contains(ex)) + { + auditLog!.Exceptions.Add(ex); + } throw; } finally