C# 将Audit.WebApi日志保存到数据库

C# 将Audit.WebApi日志保存到数据库,c#,asp.net,asp.net-core-2.2,audit.net,C#,Asp.net,Asp.net Core 2.2,Audit.net,我将Audit.WepApi()用于我的.NETCore2.2应用程序,它是一个Web API。我设法使用默认选项在控制器上配置它。它非常适合记录API调用,希望能够增加安全性 但是,我似乎找不到有关将日志保存到SQL数据库的任何信息。或者是否有任何程序可以更好地理解.json文件?您可以找到用于存储审核事件的不同数据提供程序的文档索引 例如,您可以通过引用包并配置提供程序。使用SQLServer扩展: using Audit.Core; Audit.Core.Configuration.Se

我将Audit.WepApi()用于我的.NETCore2.2应用程序,它是一个Web API。我设法使用默认选项在控制器上配置它。它非常适合记录API调用,希望能够增加安全性

但是,我似乎找不到有关将日志保存到SQL数据库的任何信息。或者是否有任何程序可以更好地理解.json文件?

您可以找到用于存储审核事件的不同数据提供程序的文档索引

例如,您可以通过
引用包并配置提供程序。使用SQLServer
扩展:

using Audit.Core;

Audit.Core.Configuration.Setup()
    .UseSqlServer(_ => _
        .ConnectionString("data source=...")
        .TableName("Event")
        .IdColumnName("EventId")
        .JsonColumnName("Data"));
您还可以创建自己的数据提供程序。检查文档,例如:

public class MyCustomDataProvider : AuditDataProvider
{
    public override object InsertEvent(AuditEvent auditEvent)
    {
        var json = auditEvent.ToJson();
        // ...
    }
}

我们需要在哪里设置提供程序,哪个文件?取决于您的项目类型,但应该在应用程序初始化时设置(在进行任何审核之前)。对于ASP.NET核心,它可能位于
启动
类上。