Asp.net mvc 在我的Asp.Net web应用程序中实现审核日志

Asp.net mvc 在我的Asp.Net web应用程序中实现审核日志,asp.net-mvc,entity-framework,Asp.net Mvc,Entity Framework,我正在使用asp.NETMVC开发一个ERP系统。目前,我想记录在我的应用程序中执行的所有操作。例如(User1 Ceate员工编号123)。 因此,我发现在repository model类中创建新日志记录是实现这一点的最佳方法,例如:- public void DeleteServer(int id) { var server = tms.Servers.Find(id); var auditinfo = IntiateAudi

我正在使用asp.NETMVC开发一个ERP系统。目前,我想记录在我的应用程序中执行的所有操作。例如(User1 Ceate员工编号123)。 因此,我发现在repository model类中创建新日志记录是实现这一点的最佳方法,例如:-

public void DeleteServer(int id)
        {
            var server = tms.Servers.Find(id);
            var auditinfo = IntiateAudit(tms.AuditActions.SingleOrDefault(a => a.Name.ToUpper() == "DELETE").ActionID,
                    tms.TechnologyTypes.SingleOrDefault(a => a.Name.ToUpper() == "Server").AssetTypeID,
                 "TDMGROUP\administrator", server.ServerID);
            tms.Servers.Remove(server);
            tms.TechnologyIPs.Remove(tms.TechnologyIPs.Where(a => a.TechnologyID == id).SingleOrDefault());
            InsertOrUpdateAudit(auditinfo);
        }

那么,我的方法是否有效,或者有更好的方法来实现审核日志呢?

我会尝试将您的审核逻辑移动到一个包含参数的操作过滤器中。这样你就可以在你所有的行动中重复使用它

可以找到一篇关于动作过滤器的好文章