如何设置AuditLog.CustomData字段?

时间:2018-03-30 15:30:00

标签: aspnetboilerplate

我正在使用aspnet样板文件,并且我已成功使用[DisableAuditing][Audited]属性精确修剪了哪些方法未记录/未记录的方法。所以这部分工作得很好,我对我的日志记录水平感到满意。但是,我不了解如何有效地使用CustomData字段。我想使用此字段来保存默认情况下未捕获的某些其他数据,但我不了解如何设置或在何处设置。提前感谢任何建议。

1 个答案:

答案 0 :(得分:1)

您可以继承AuditingStore并将CustomData设置为您的数据:

public class MyAuditingStore : AuditingStore
{
    public MyAuditingStore(IRepository<AuditLog, long> auditLogRepository)
        : base(auditLogRepository)
    {
    }

    public override Task SaveAsync(AuditInfo auditInfo)
    {
        auditInfo.CustomData = "certain additional data that is not captured by default";
        return base.SaveAsync(auditInfo);
    }
}

然后替换模块中的IAuditingStore

// using Abp.Configuration.Startup;

public override void PreInitialize()
{
    Configuration.ReplaceService<IAuditingStore, MyAuditingStore>(DependencyLifeStyle.Transient);
}