【发布时间】:2020-07-24 04:12:18
【问题描述】:
我正在使用运行 .NET 4.6.1 的 MVC 应用程序使用 Audit.NET 和实体框架实施审计。我能够通过启动配置审计,以便它捕获审计信息并使用 JSON 示例将其记录到自定义 AuditLog 表中以存储整个模型。目前此实现正在运行,但是,我希望能够使用 OptOut,以便我可以通过 [AuditInclude] 属性专门定义要审核的模型。
以下是我的审核配置代码,我已将上下文定义为 OptOut,但它仍在记录所有数据库交互。
Audit.Core.Configuration.Setup()
.UseEntityFramework(ef => ef
.AuditTypeMapper(t => typeof(AuditLog))
.AuditEntityAction<AuditLog>((ev, entry, entity) =>
{
entity.AuditData = entry.ToJson();
entity.EntityType = entry.EntityType.Name;
entity.AuditDate = DateTime.Now;
entity.AuditUser = Environment.UserName;
entity.TablePk = entry.PrimaryKey.First().Value.ToString();
})
.IgnoreMatchedProperties(true));
DBContext
[AuditDbContext(Mode =AuditOptionMode.OptOut)]
public class DbContext : AuditDbContext
有谁知道如何使用 Audit.NET 的这种配置实现 OptOut?
【问题讨论】: