2013-07-23 21 views
0

我正在使用asp.net MVC開發ERP系統。目前我想記錄在我的應用程序內執行的所有操作。例如(User1 Ceate員工編號123)。 所以我發現在倉庫模型類達致這最好的方式創造新的日誌記錄,如: -在我的Asp.Net網絡應用程序中實施審計日誌

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

所以將我的辦法正常工作,或有實施審計日誌更好的方法?

回答

0

我會嘗試將您的審計邏輯移動到一個採用參數的Action Filter中。這樣你可以在你的所有行爲中重新使用它。

有關動作過濾器的大文章here