「ASP.NET MVC/セレクター」の版間の差分
imported>Administrator 編集の要約なし |
imported>Administrator |
||
| (同じ利用者による、間の1版が非表示) | |||
| 1行目: | 1行目: | ||
[[ASP.NET MVC]]の'''セレクター''' | [[ASP.NET MVC]]の'''セレクター'''とは、[[アクションメソッド]]([[コントローラークラス]]の[[メソッド]])に、[[属性]]([[Attribute]])を用いて、[[コントローラー]]による[[アクション]]の振り分け選択する機能である。 | ||
ASP.NET | [[ASP.NET MVC]]の規定値ではメソッド名がアクション名になるが、ActionName属性(ActionNameAttributeクラス)を付けることでアクション名を明示することもできる。この際にセレクターを用いると、同一アクション名でPOSTやGETなどの条件で[[アクションメソッド]]を切り替えるということが可能になる。 | ||
<source lang="csharp"> | <source lang="csharp"> | ||
public class HomeController : Controller | public class HomeController : Controller | ||
| 21行目: | 21行目: | ||
</source> | </source> | ||
なお、AcceptVerbs(HttpVerbs.Post) | なお、AcceptVerbs(HttpVerbs.Post)などの部分は記述が長ったらしいということで、[[ASP.NET MVC 2]]からHttpPost属性やHttpGet属性という短い名前が用意されている。 | ||
== 主なセレクタークラス == | |||
* [[ActionMethodSelectorAttribute クラス (System.Web.Mvc)]] | |||
** [[AcceptVerbsAttribute クラス (System.Web.Mvc)]] | |||
** [[HttpDeleteAttribute クラス (System.Web.Mvc)]] | |||
** [[HttpGetAttribute クラス (System.Web.Mvc)]] | |||
** [[HttpPostAttribute クラス (System.Web.Mvc)]] | |||
** [[HttpPutAttribute クラス (System.Web.Mvc)]] | |||
** [[NonActionAttribute クラス (System.Web.Mvc)]] | |||
* [[ActionNameSelectorAttribute クラス (System.Web.Mvc)]] | |||
** [[ActionNameAttribute クラス (System.Web.Mvc)]] | |||
== セレクターの独自実装 == | |||
基本は[[ActionMethodSelectorAttribute クラス (System.Web.Mvc)|ActionMethodSelectorAttributeクラス]]を継承、IsValidForRequestメソッドをオーバーライドし、その中に条件を書くことで独自のセレクターを作ることができる。 | |||
== 関連項目 == | == 関連項目 == | ||
| 30行目: | 44行目: | ||
== 参考文献 == | == 参考文献 == | ||
<references/> | <references/> | ||
== 外部リンク == | == 外部リンク == | ||
{{stub}} | {{stub}} | ||