一部のコントローラー アクションでは、ユーザーを認証する必要があります。これらのアクションには、カスタム[Authorize]
属性のフラグが付けられます。舞台裏では、カスタム メンバーシップ プロバイダーがいくつかの魔法を行い、その中でいくつかの一時データを共通スレッドに設定します。
認証が必要な各アクションの最後に、OnActionExecuted()
フィルターを呼び出してスレッドをクリーンアップする必要があります。これは、 と呼ばれる別のカスタム属性を介して行われます[CleanupContext]
。
したがって、私のアクションは次のようになります。
[Authorize]
[CleanupContext]
public ViewResult Action()
{
...
}
これら 2 つは常に一緒に使用されるため、私は怠け者であり、いつか 1 つの開発者がどちらか一方を配置するのを忘れる可能性があり、最終的に奇妙な動作が発生するのではないかと恐れているため、それらを 1 つの属性に結合する方法はありますか?
[AuthorizeAndCleanup]
public ViewResult Action()
{
// Aaah, if only it could look like this :D
}
どうもありがとう!