Język

RouteCollection.Ignore Metoda

Definicja

Definiuje wzorzec adresu URL, który nie powinien być sprawdzany pod kątem dopasowań do tras.

Przeciążenia

Nazwa Opis
Ignore(String, Object)

Definiuje wzorzec adresu URL, który nie powinien być sprawdzany pod kątem dopasowań do tras, jeśli adres URL żądania spełnia określone ograniczenia.

Ignore(String)

Definiuje wzorzec adresu URL, który nie powinien być sprawdzany pod kątem dopasowań do tras.

Uwagi

Ta metoda tworzy trasę mapowana na procedurę StopRoutingHandler obsługi tras. Po wywołaniu tej metody żądania zgodne z określonym wzorcem adresu URL nie będą przetwarzane jako żądania tras.

ASP.NET routing automatycznie ignoruje żądania, gdy adres URL pasuje do pliku fizycznego, takiego jak plik obrazu. W niektórych przypadkach można również chcieć routing ignorować żądania, gdy nie ma pliku fizycznego. Na przykład żądania, które ASP.NET automatycznie wysyłają pliki axd, nie powinny być traktowane jako żądania trasy, mimo że nie ma pliku fizycznego odpowiadającego rozszerzeniu .axd nazwy pliku.

Ignore(String, Object)

Definiuje wzorzec adresu URL, który nie powinien być sprawdzany pod kątem dopasowań do tras, jeśli adres URL żądania spełnia określone ograniczenia.

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)

Parametry

url
String

Wzorzec adresu URL do zignorowania.

constraints
Object

Dodatkowe kryteria określające, czy żądanie zgodne ze wzorcem adresu URL zostanie zignorowane.

Wyjątki

Parametr url jest null.

Przykłady

W poniższym przykładzie pokazano, jak za pomocą tej metody zignorować wszystkie adresy URL, które mają rozszerzenie .aspx. Możesz to zrobić, jeśli zarejestrujesz niestandardową procedurę obsługi HTTP, aby obsłużyć wszystkie adresy URL plików z rozszerzeniem ".aspx". Pojedynczy wzorzec adresu URL zgodny ze wszystkimi żądaniami .aspx wymaga dwóch parametrów catchall, takich jak {*path}.aspx/{*pathinfo}. (Ten wzorzec będzie pasował do dowolnego adresu URL kończącego się .aspx, w tym tych, które mają parametry ciągu zapytania). Jednak routing zezwala tylko na jeden parametr catchall na końcu. Alternatywnie można określić wzorzec adresu URL, który ma pojedynczy parametr catchall, który pasuje do wszystkich adresów URL, a następnie określić ograniczenia wykluczające wszystko, co nie ma rozszerzenia .aspx, jak pokazano w poniższym przykładzie:

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

Poprzedni wiersz kodu zazwyczaj jest dodawany do metody wywoływanej z Application_Start metody w pliku Global.asax, jak pokazano w przykładzie Ignore(String) przeciążenia.

Uwagi

Ta metoda tworzy trasę mapowana na procedurę StopRoutingHandler obsługi tras. Po wywołaniu tej metody żądania zgodne z określonym wzorcem adresu URL nie będą przetwarzane jako żądania tras.

ASP.NET routing automatycznie ignoruje żądania, gdy adres URL pasuje do pliku fizycznego, takiego jak plik obrazu. W niektórych przypadkach można również chcieć routing ignorować żądania, gdy nie ma pliku fizycznego. Na przykład żądania, które ASP.NET automatycznie wysyłają pliki axd, nie powinny być traktowane jako żądania trasy, mimo że nie ma pliku fizycznego odpowiadającego rozszerzeniu .axd nazwy pliku.

Zobacz też

Dotyczy

Ignore(String)

Definiuje wzorzec adresu URL, który nie powinien być sprawdzany pod kątem dopasowań do tras.

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

Parametry

url
String

Wzorzec adresu URL do zignorowania.

Przykłady

Domyślny szablon dla projektów MVC używa tej metody do wykluczania plików axd z routingu, jak pokazano w poniższym przykładzie:

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

Uwagi

Ta metoda tworzy trasę mapowana na procedurę StopRoutingHandler obsługi tras. Po wywołaniu tej metody żądania zgodne z określonym wzorcem adresu URL nie będą przetwarzane jako żądania tras.

ASP.NET routing automatycznie ignoruje żądania, gdy adres URL pasuje do pliku fizycznego, takiego jak plik obrazu. W niektórych przypadkach można również chcieć routing ignorować żądania, gdy nie ma pliku fizycznego. Na przykład żądania, które ASP.NET automatycznie wysyłają pliki axd, nie powinny być traktowane jako żądania trasy, mimo że nie ma pliku fizycznego odpowiadającego rozszerzeniu .axd nazwy pliku.

Zobacz też

Dotyczy