Freigeben über


RouteCollection.Ignore Methode

Definition

Definiert ein URL-Muster, das nicht mit Routen für Übereinstimmungen verglichen werden soll.

Überlädt

Ignore(String, Object)

Definiert ein URL-Muster, das nicht auf Übereinstimmungen für Routen überprüft werden soll, falls eine Anforderungs-URL den angegebenen Einschränkungen entspricht.

Ignore(String)

Definiert ein URL-Muster, das nicht mit Routen für Übereinstimmungen verglichen werden soll.

Hinweise

Diese Methode erstellt eine Route, die dem StopRoutingHandler Routenhandler zugeordnet ist. Nachdem Sie diese Methode aufgerufen haben, werden Anforderungen, die dem angegebenen URL-Muster entsprechen, nicht als Routenanforderungen verarbeitet.

ASP.NET Routing ignoriert Anforderungen automatisch, wenn die URL mit einer physischen Datei, z. B. einer Bilddatei, übereinstimmt. In einigen Fällen kann es auch sein, dass das Routing Anforderungen ignoriert, wenn keine physische Datei vorhanden ist. Beispielsweise sollten die Anforderungen, die ASP.NET automatisch für AXD-Dateien stellt, nicht als Routenanforderungen behandelt werden, obwohl keine physische Datei vorhanden ist, die der Dateinamenerweiterung AXD entspricht.

Ignore(String, Object)

Definiert ein URL-Muster, das nicht auf Übereinstimmungen für Routen überprüft werden soll, falls eine Anforderungs-URL den angegebenen Einschränkungen entspricht.

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)

Parameter

url
String

Das zu ignorierende URL-Muster.

constraints
Object

Zusätzliche Kriterien, die bestimmen, ob eine Anforderung, die mit dem URL-Muster übereinstimmt, ignoriert wird.

Ausnahmen

Der url-Parameter ist null.

Beispiele

Im folgenden Beispiel wird gezeigt, wie Sie diese Methode verwenden, um alle URLs mit einer .aspx-Erweiterung zu ignorieren. Dies empfiehlt sich, wenn Sie einen benutzerdefinierten HTTP-Handler registrieren, um alle URLs für Dateien zu behandeln, die die Erweiterung ".aspx" aufweisen. Ein einzelnes URL-Muster, das allen .aspx Anforderungen entspricht, erfordert zwei Catchall-Parameter wie {*path}.aspx/{*pathinfo}. (Dieses Muster würde mit jeder URL übereinstimmen, die auf .aspx endet, einschließlich der URL mit Abfragezeichenfolgenparametern.) Das Routing lässt jedoch nur einen Catchall-Parameter am Ende zu. Alternativ können Sie ein URL-Muster mit einem einzelnen Catchall-Parameter angeben, der allen URLs entspricht, und dann Einschränkungen angeben, die alles ausschließen, was nicht über die .aspx-Erweiterung verfügt, wie im folgenden Beispiel gezeigt:

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

Die vorherige Codezeile wird normalerweise einer Methode hinzugefügt, die von der Application_Start Methode in global.asax aufgerufen wird, wie im Beispiel für die Ignore(String) Überladung gezeigt.

Hinweise

Diese Methode erstellt eine Route, die dem StopRoutingHandler Routenhandler zugeordnet ist. Nachdem Sie diese Methode aufgerufen haben, werden Anforderungen, die dem angegebenen URL-Muster entsprechen, nicht als Routenanforderungen verarbeitet.

ASP.NET Routing ignoriert Anforderungen automatisch, wenn die URL mit einer physischen Datei, z. B. einer Bilddatei, übereinstimmt. In einigen Fällen kann es auch sein, dass das Routing Anforderungen ignoriert, wenn keine physische Datei vorhanden ist. Beispielsweise sollten die Anforderungen, die ASP.NET automatisch für AXD-Dateien stellt, nicht als Routenanforderungen behandelt werden, obwohl keine physische Datei vorhanden ist, die der Dateinamenerweiterung AXD entspricht.

Weitere Informationen

Gilt für:

Ignore(String)

Definiert ein URL-Muster, das nicht mit Routen für Übereinstimmungen verglichen werden soll.

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

Parameter

url
String

Das zu ignorierende URL-Muster.

Beispiele

Die Standardvorlage für MVC-Projekte verwendet diese Methode, um AXD-Dateien vom Routing auszuschließen, wie im folgenden Beispiel gezeigt:

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

Hinweise

Diese Methode erstellt eine Route, die dem StopRoutingHandler Routenhandler zugeordnet ist. Nachdem Sie diese Methode aufgerufen haben, werden Anforderungen, die dem angegebenen URL-Muster entsprechen, nicht als Routenanforderungen verarbeitet.

ASP.NET Routing ignoriert Anforderungen automatisch, wenn die URL mit einer physischen Datei, z. B. einer Bilddatei, übereinstimmt. In einigen Fällen kann es auch sein, dass das Routing Anforderungen ignoriert, wenn keine physische Datei vorhanden ist. Beispielsweise sollten die Anforderungen, die ASP.NET automatisch für AXD-Dateien stellt, nicht als Routenanforderungen behandelt werden, obwohl keine physische Datei vorhanden ist, die der Dateinamenerweiterung AXD entspricht.

Weitere Informationen

Gilt für: