RedirectResult クラス (System.Web.Mvc)

提供: MonoBook
2012年4月3日 (火) 01:48時点におけるimported>Administratorによる版 (→‎使い方)
ナビゲーションに移動 検索に移動

RedirectResultクラスとは、ASP.NET MVCアクション・メソッドの戻り値(ActionResultクラスおよびその派生クラス)として、Webブラウザに対して指定されたURIにリダイレクトするよう指示するHTTPレスポンスヘッダーを生成、送信するクラスである。

使い方

RedirectResultクラスの使い方はいたって簡単。 単純にリダイレクト先のURLを指定するだけである。 これでWebブラウザに対して302リダイレクトを送信する。

using System.Web.Mvc;

public class HomeController : Controller 
{
    public ActionResult Index() 
    {
        return new RedirectResult( "http://monobook.org/wiki/PHP" );
    }
}

これはPHPでいう以下のコードに相当する。

<?php
header( "Location: http://monobook.org/wiki/PHP" );

301リダイレクト

ASP.NET MVC 3では、bool型のPermanentプロパティが追加され、永続的に移転したことを示す永久リダイレクト(301リダイレクト)を発生させるかを指定できるようになった。

なお、ASP.NET MVC 3で追加されたものでありASP.NET MVC 2以前では存在しないので注意。

using System.Web.Mvc;

public class HomeController : Controller 
{
    public ActionResult Index() 
    {
        return new RedirectResult( "http://monobook.org/wiki/PHP", true );
    }
}

これはPHPでいう以下のコードに相当する。

<?php
header( "HTTP/1.1 301 Moved Permanently" ); 
header( "Location: http://monobook.org/wiki/PHP" );

関連項目

参考文献


外部リンク