ASP.Net MVC CMSですべての挿入/更新/削除SQL操作を追跡したい

asp.net-mvc
ASP.Net MVC CMSですべての挿入/更新/削除SQL操作を追跡したい

アプリケーションにイベント管理を実装したいのですが、この目標を達成するためのベストプラクティスは何かを知りたいです。 私の場合のイベント管理は、アプリケーションのすべての挿入/更新/削除操作のログを維持することです。

  1  0


ベストアンサー

データベースイベントを参照しているように聞こえますが、その場合、データベースでトリガーを使用し、ASP.Netの実装を気にしません。

3


どのデータアクセス層を使用していますか? LINQ to SQLまたはEntity Frameworkを使用している場合、コンテキスト内のイベントにフックして、これらの操作を追跡できます。 または、これらの操作がすべて流れるサービス層がある場合、そこでイベントを発生させることができます。

具体的には、LINQ to SQLを使用しているため、厳密に型指定されたDataContextにInsertEntity、UpdateEntity、DeleteEntity(_Entity_は各エンティティの名前)の部分メソッドを実装できます。 これらのフックは、ロギングまたはその他のイベント処理を実行する正確な場所である必要があります。

1


変更データキャプチャを使用するhttp://www.mssqltips.com/tip.asp?tip=1474

1


トリガーを使用してDBレイヤーで実行できるという答えに同意します。 データベースレイヤーに配置したくない場合は、すべてのアクション(追加/更新/削除)のアクションフィルターを作成して、ログに書き込みます。

0


タイトルとURLをコピーしました