言語

RouteCollection.Ignore メソッド

定義

ルートに対する一致をチェックしない URL パターンを定義します。

オーバーロード

名前 説明
Ignore(String, Object)

要求 URL が指定された制約を満たしている場合に、ルートに対する一致をチェックしない URL パターンを定義します。

Ignore(String)

ルートに対する一致をチェックしない URL パターンを定義します。

注釈

このメソッドは、 StopRoutingHandler ルート ハンドラーにマップされるルートを作成します。 このメソッドを呼び出した後、指定した URL パターンに一致する要求はルート要求として処理されません。

ASP.NET ルーティングでは、URL がイメージ ファイルなどの物理ファイルと一致すると、要求は自動的に無視されます。 場合によっては、物理ファイルがない場合に要求を無視するようにルーティングすることもできます。 たとえば、.axd ファイル ASP.NET 自動的に作成される要求は、.axd ファイル名拡張子に対応する物理ファイルがない場合でも、ルート要求として扱うべきではありません。

Ignore(String, Object)

要求 URL が指定された制約を満たしている場合に、ルートに対する一致をチェックしない URL パターンを定義します。

public:
 void Ignore(System::String ^ url, System::Object ^ constraints);
public void Ignore(string url, object constraints);
member this.Ignore : string * obj -> unit
Public Sub Ignore (url As String, constraints As Object)

パラメーター

url
String

無視する URL パターン。

constraints
Object

URL パターンに一致する要求が無視されるかどうかを決定する追加の条件。

例外

url パラメーターはnull

次の例は、このメソッドを使用して、.aspx拡張子を持つすべての URL を無視する方法を示しています。 拡張子が ".aspx" のファイルのすべての URL を処理するカスタム HTTP ハンドラーを登録する場合は、これを行うことができます。 すべての.aspx要求に一致する単一の URL パターンには、 {*path}.aspx/{*pathinfo}などの 2 つのキャッチオール パラメーターが必要です。 (このパターンは、クエリ文字列パラメーターを持つ URL を含め、.aspxで終わるすべての URL と一致します)。ただし、ルーティングで許可されるキャッチオール パラメーターは最後に 1 つだけです。 別の方法として、すべての URL に一致する単一の catchall パラメーターを持つ URL パターンを指定し、次の例に示すように、.aspx拡張機能を持たないものすべてを除外する制約を指定できます。

routes.Ignore("{*allaspx}", new With {.allaspx = ".*\.aspx(/.*)?"})
routes.Ignore("{*allaspx}", new {allaspx=@".*\.aspx(/.*)?"});

前のコード行は、通常、Application_Start オーバーロードの例に示すように、Global.asax のIgnore(String) メソッドから呼び出されるメソッドに追加されます。

注釈

このメソッドは、 StopRoutingHandler ルート ハンドラーにマップされるルートを作成します。 このメソッドを呼び出した後、指定した URL パターンに一致する要求はルート要求として処理されません。

ASP.NET ルーティングでは、URL がイメージ ファイルなどの物理ファイルと一致すると、要求は自動的に無視されます。 場合によっては、物理ファイルがない場合に要求を無視するようにルーティングすることもできます。 たとえば、.axd ファイル ASP.NET 自動的に作成される要求は、.axd ファイル名拡張子に対応する物理ファイルがない場合でも、ルート要求として扱うべきではありません。

こちらもご覧ください

適用対象

Ignore(String)

ルートに対する一致をチェックしない URL パターンを定義します。

public:
 void Ignore(System::String ^ url);
public void Ignore(string url);
member this.Ignore : string -> unit
Public Sub Ignore (url As String)

パラメーター

url
String

無視する URL パターン。

MVC プロジェクトの既定のテンプレートでは、次の例に示すように、このメソッドを使用して .axd ファイルをルーティングから除外します。

public class MvcApplication : System.Web.HttpApplication
{
    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapRoute(
            "Default",                                              // Route name
            "{controller}/{action}/{id}",                           // URL with parameters
            new { controller = "Home", action = "Index", id = "" }  // Parameter defaults
        );
    }

    protected void Application_Start()
    {
        RegisterRoutes(RouteTable.Routes);
    }
}
Public Class MvcApplication
    Inherits System.Web.HttpApplication

    Shared Sub RegisterRoutes(ByVal routes As RouteCollection)
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}")

        ' MapRoute takes the following parameters, in order:
        ' (1) Route name
        ' (2) URL with parameters
        ' (3) Parameter defaults
        routes.MapRoute( _
            "Default", _
            "{controller}/{action}/{id}", _
            New With {.controller = "Home", .action = "Index", .id = ""} _
        )

    End Sub

    Sub Application_Start()
        RegisterRoutes(RouteTable.Routes)
    End Sub
End Class

注釈

このメソッドは、 StopRoutingHandler ルート ハンドラーにマップされるルートを作成します。 このメソッドを呼び出した後、指定した URL パターンに一致する要求はルート要求として処理されません。

ASP.NET ルーティングでは、URL がイメージ ファイルなどの物理ファイルと一致すると、要求は自動的に無視されます。 場合によっては、物理ファイルがない場合に要求を無視するようにルーティングすることもできます。 たとえば、.axd ファイル ASP.NET 自動的に作成される要求は、.axd ファイル名拡張子に対応する物理ファイルがない場合でも、ルート要求として扱うべきではありません。

こちらもご覧ください

適用対象