「ASP.NET MVC/フィルター」を編集中
この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。
最新版 | 編集中の文章 | ||
1行目: | 1行目: | ||
[[ASP.NET MVC]]の'''フィルター'''とは、コントローラークラスやアクションメソッド(コントローラークラスのメソッド)に、[[属性]](Attribute)もちいて処理を挿入する機能のことである。 | [[ASP.NET MVC]]の'''フィルター'''とは、コントローラークラスやアクションメソッド(コントローラークラスのメソッド)に、[[属性]](Attribute)もちいて処理を挿入する機能のことである。 | ||
+ | |||
+ | たとえばユーザー認証処理がされている、されていない、などの処理を[[アクション]]ごとに書いていたのでは面倒、かつ本流ではないソースコードが入りまくり見通しが悪くなるのでフィルター化しておくと便利だという。 | ||
== 使い道の例 == | == 使い道の例 == | ||
− | + | たとえばEditアクションはログインしているユーザーのみとする場合は以下のようになる。 | |
− | |||
− | |||
<source lang="csharp"> | <source lang="csharp"> | ||
[Authorize] | [Authorize] | ||
17行目: | 17行目: | ||
== フィルターの種類 == | == フィルターの種類 == | ||
− | [[ASP.NET MVC]] | + | [[ASP.NET MVC]]のフィルターは大きく、承認フィルター、アクションフィルター、結果フィルター、例外フィルターの4つに分けられる。 |
=== 承認フィルター === | === 承認フィルター === | ||
74行目: | 74行目: | ||
[AttributeUsageAttribute(AttributeTargets.Class|AttributeTargets.Method, Inherited = true, AllowMultiple = true)] | [AttributeUsageAttribute(AttributeTargets.Class|AttributeTargets.Method, Inherited = true, AllowMultiple = true)] | ||
public class AuthorizeAttribute | public class AuthorizeAttribute | ||
− | : FilterAttribute, | + | : FilterAttribute, |
− | IAuthorizationFilter | + | IAuthorizationFilter |
{ | { | ||
//... | //... | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
} | } | ||
</source> | </source> | ||
110行目: | 83行目: | ||
== 関連項目 == | == 関連項目 == | ||
* [[ASP.NET MVC]] | * [[ASP.NET MVC]] | ||
− | |||
== 参考文献 == | == 参考文献 == | ||
− | + | <references/> | |
+ | == 外部リンク == | ||
{{stub}} | {{stub}} |