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

时间:2013-07-23 15:46:29

标签: asp.net-mvc entity-framework

我正在使用asp.net MVC开发ERP系统。目前我想记录在我的应用程序中执行的所有操作。例如(User1 Ceate员工编号123)。 所以我发现在存储库模型类中创建新的日志记录是实现这一目标的最佳方法,例如: -

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);
        }

那么我的方法是否运作良好,或者有更好的方法来实施审计日志?

1 个答案:

答案 0 :(得分:0)

我会尝试将审核逻辑移动到带有参数的Action Filter中。这样你就可以在你的所有行动中重复使用它。

可以找到关于动作过滤器的精彩文章here