0

新しい MVC 4 プロジェクトを作成しました。カスタム アクション フィルターを作成し、ActionFilterAttribute から継承しました。OnActionExecuting() のオーバーライドを作成しました。現時点では、あまり効果がありません。出力ウィンドウにメッセージを出力するだけです。最後に、FilterConfig.cs にある RegisterGlobalFilters() にアクション フィルターを登録しました。

アプリケーションを実行すると、ブレークポイントにヒットします。これはいい。ただし、どのコントローラーにも属性を追加しませんでした。この動作は正しいですか? コントローラにいつ属性を追加する必要がありますか? これはどのように作動しますか?

4

1 に答える 1

1

RegisterGlobalFilters は、すべてのコントローラーに適用できます。

場合によっては、特定のコントローラに特定の属性を追加したいことがあります。たとえば、特定のコントローラーは特定の役割を必要とする場合がありますが、[Authorize (Roles="group1")]他のすべてのコントローラーはそうではありません。そのコントローラーにのみ属性を追加すると、この機能が提供されます。

于 2012-10-17T15:50:04.720 に答える