「ASP.NET MVC/アクション」を編集中
この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。
最新版 | 編集中の文章 | ||
2行目: | 2行目: | ||
アクション(コントローラークラス内のメソッド)を記述するためのコントローラークラス自体は「[[Controller クラス (System.Web.Mvc)]]」を継承して作成する。 | アクション(コントローラークラス内のメソッド)を記述するためのコントローラークラス自体は「[[Controller クラス (System.Web.Mvc)]]」を継承して作成する。 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== フォルダー構成 == | == フォルダー構成 == | ||
− | + | ASP.NET MVCでは「Controllers」ディレクトリ以下にコントローラークラスを格納することになっている。 | |
== 戻り値 == | == 戻り値 == | ||
− | + | ASP.NET MVCのアクションは必ずActionResultクラスのインスタンスを返すことになっている。 | |
− | + | ActionResultの種類など、詳細は「[[ActionResult クラス (System.Web.Mvc)]]」を参照。 | |
== MVC == | == MVC == | ||
− | + | MVCの原則に従えば、コントローラーはモデルとビューを繋ぐのが主目的なので、コントローラーアクションにはモデルからデータを取得し、適切なビューに橋渡しする処理のみを書く。たとえばPCとスマートフォンでビューを切り替えるなどのビジネスロジックでもHTMLの生成でもない連結器としての機能を書いておく。 | |
− | + | ここにビジネスロジックを書いてはいけない。書けないわけではなく、「書くな」という決まり事であり、書けるし、書いた方が手っ取り早いが、サイトが肥大化したときにスパゲッティになるよねということらしい。 | |
=== 悪い例 === | === 悪い例 === |