C# 获取AuditAction';派生AuditDataProvider中的Username属性

C# 获取AuditAction';派生AuditDataProvider中的Username属性,c#,audit.net,C#,Audit.net,我正在使用Audit.Net和Audit.MVC 14.2.2.0。伟大的框架 我已扩展AuditDataProvider: public class SQLAuditDataProvider : AuditDataProvider 在该类中,我希望获得auditEvent的Action对象,以便记录用户名。(我不想要环境的用户名,尽管我可以得到它。) 调试时,我可以看到该Action属性,但当我尝试键入它时,会出现编译时错误 我可以将其存储为HomeController中的CustomFi

我正在使用Audit.Net和Audit.MVC 14.2.2.0。伟大的框架

我已扩展AuditDataProvider:

 public class SQLAuditDataProvider : AuditDataProvider
在该类中,我希望获得auditEvent的Action对象,以便记录用户名。(我不想要环境的用户名,尽管我可以得到它。) 调试时,我可以看到该Action属性,但当我尝试键入它时,会出现编译时错误

我可以将其存储为HomeController中的CustomField,但最好只将其存储在SQLAuditDataProvider中


我可能在做一些愚蠢的事情,但我错过了什么?

您可以将
AuditEvent
转换为
AuditEventMvcAction
,然后访问
操作
属性:

var action = (auditEvent as AuditEventMvcAction).Action;
也可以使用方便的扩展方法:

using Audit.Mvc;

var action = auditEvent.GetMvcAuditAction();

// Or from the audit scope
var action = auditScope.GetMvcAuditAction();