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 mehr als Routenanforderungen verarbeitet.

ASP.NET Routing werden Anforderungen automatisch ignoriert, wenn die URL mit einer physischen Datei übereinstimmt, z. B. einer Bilddatei. In einigen Fällen möchten Sie möglicherweise auch, dass das Routing Anforderungen ignoriert, wenn keine physische Datei vorhanden ist. Beispielsweise sollten die Anforderungen, die ASP.NET automatisch für AXD-Dateien vornimmt, 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

Das folgende Beispiel zeigt, wie Sie diese Methode verwenden, um alle URLs zu ignorieren, die über eine ASPX-Erweiterung verfügen. Dies empfiehlt sich, wenn Sie einen benutzerdefinierten HTTP-Handler registrieren, um alle URLs für Dateien mit der Erweiterung ".aspx" zu verarbeiten. Ein einzelnes URL-Muster, das mit allen ASPX-Anforderungen übereinstimmt, würde zwei Catchall-Parameter erfordern, z {*path}.aspx/{*pathinfo}. B. . (Dieses Muster würde mit jeder URL übereinstimmen, die mit .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 angeben, das über einen einzelnen catchall-Parameter verfügt, der allen URLs entspricht, und dann Einschränkungen angeben, die alles ausschließen, was nicht über die Erweiterung .aspx verfügt, wie im folgenden Beispiel gezeigt:

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

Die vorherige Codezeile wird in der Regel 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 mehr als Routenanforderungen verarbeitet.

ASP.NET Routing werden Anforderungen automatisch ignoriert, wenn die URL mit einer physischen Datei übereinstimmt, z. B. einer Bilddatei. In einigen Fällen möchten Sie möglicherweise auch, dass das Routing Anforderungen ignoriert, wenn keine physische Datei vorhanden ist. Beispielsweise sollten die Anforderungen, die ASP.NET automatisch für AXD-Dateien vornimmt, 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 mehr als Routenanforderungen verarbeitet.

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

Weitere Informationen

Gilt für: