RouteCollection.Ignore メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
ルートの照合を行わない 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 つの catchall パラメーターが必要です。 (このパターンは、クエリ文字列パラメーターを持つ URL を含め、.aspxで終わるすべての URL と一致します)。ただし、ルーティングでは、最後に catchall パラメーターを 1 つだけ使用できます。 別の方法として、すべての URL に一致する単一の catchall パラメーターを持つ URL パターンを指定し、次の例に示すように、.aspx拡張機能を持たないすべてを除外する制約を指定できます。
routes.Ignore("{*allaspx}", new With {.allaspx = ".*\.aspx(/.*)?"})
routes.Ignore("{*allaspx}", new {allaspx=@".*\.aspx(/.*)?"});
前のコード行は、通常、オーバーロードの例に示すように、Global.asax の メソッドから Application_Start
呼び出されるメソッドに 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 ファイル名拡張子に対応する物理ファイルがない場合でも、ルート要求として扱うべきではありません。
こちらもご覧ください
適用対象
.NET