0

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

私のアプローチはうまく機能しますか、それとも監査ログを実装するためのより良いアプローチがありますか?

4

1 に答える 1

0

監査ロジックを、パラメーターを受け取るアクション フィルターに移動しようとします。そうすれば、すべてのアクションで再利用できます。

アクション フィルターに関する優れた記事は、ここにあります。

于 2013-07-24T13:38:01.640 に答える