asp.netmvcに付属している組み込みのフォーム認証を使用しています。aspnet_regsqlウィザードを使用して必要なすべてのテーブルをSQLServerに追加しましたが、すべてが統合され、完全に機能しています。これで、ユーザーの追加、ログイン、承認の制御などを行うことができます。
次のステップは、ユーザーがアクションを実行したときにいくつかの基本的なログを追加することです。たとえば、UserAdministrationを使用してデータベースからユーザーを削除したユーザー、または情報が制限されたビューにアクセスしたユーザーをログに記録したいとします(これらは単なる例です)。
認証にはaspnetWebEventEventsというテーブルが付属しているのを見てきましたが、これはWebサイトで発生した例外を格納することだけを目的としており、web.configで構成されており、すべて自動的に実行されます。すべてのフィールドに手動で入力しなくても、クラスを呼び出してカスタムアクションをログに記録したいと思います。
Logger.Log("Action performed");
そして、ユーザー、時間、およびこれらすべてのフィールドを自動的に保存します。
このようなことを行うには、すでに実装されているクラスが必要であり、すでに実行されているものを書き直したくありません。
内部で呼び出されるSqlWebEventProviderを使用してみましたが、このクラスは内部であるため、使用するためのものではありません。
たぶん私は間違っています、これはカスタムアクションをログに記録することを意図していないので、カスタムアクションを使用して独自のテーブルを作成する方がよいでしょう...