ActionResult クラス (System.Web.Mvc)

提供: MonoBook
2012年3月14日 (水) 08:40時点におけるimported>Administratorによる版
ナビゲーションに移動 検索に移動

ActionResult クラスとは、ASP.NET MVCのアクション・メソッドの戻り値として使う各種クラス(ActionResultを継承したクラス)のベースクラス。

アクションメソッド内でActionResult(を継承したクラス)の中身を穴埋めしてやると、ASP.NET MVCのフレームワーク側でその内容に従いHTMLJSONなどのHTTPレスポンスが生成される。

たとえばViewResultであればビュー(HTMLテンプレート)を呼び出してレンダリングしたり、FileResultであればファイルを指定するだけでフレームワーク側で適切なHTTPレスポンスヘッダを生成し簡単にダウンロードダイアログを表示したりできる。

ContentResultだけでを用いてゴリゴリ書けば20世紀のPerlで書かれたウェブアプリケーションばりのソースコードになること受けあい。まじおすすめ。

ActionResultの種類

ASP.NET MVCではActionResultクラスを継承した様々な便利クラスがあらかじめ用意されているので使うとよい。

  • ContentResult - 文字列を直接HTTPレスポンスに書き込む。
  • EmptyResult - 空のHTTPレスポンスを返す。
  • FileResult - ファイルをダウンロードさせるためのベースクラス。
    • FileContentResult - バイト配列をHTTPレスポンスに書き込む。
    • FilePathResult - 指定されたファイルパスの中身をHTTPレスポンスに書き込む。
    • FileStreamResult - Streamクラスの中身をHTTPレスポンスに書き込む。
  • HttpUnauthorizedResult - 認証要求を送信する。
  • JavaScriptResult - JavaScript(文字列)を直接HTTPレスポンスに書き込む。
  • JsonResult - Objectクラスの中身を突っ込むとJSONに変換して送信する。
  • RedirectResult - リダイレクトする。
  • RedirectToRouteResult - 指定されたルート名およびルート値の結果を、HTMLフラグメント(htmlタグやbodyタグのないAJAX差込用のHTMLパーツ)として送信する。
  • PartialViewResult - 指定されたビューをレンダリングして、HTMLフラグメント(htmlタグやbodyタグのないAJAX差込用のHTMLパーツ)として送信する。
  • ViewResult - 指定されたビューをレンダリングして送信する。通常はこれ。

関連項目

外部リンク