Sdílet prostřednictvím


HttpMethodConstraint Třída

Definice

Umožňuje definovat, které příkazy HTTP jsou povoleny, když ASP.NET směrování určuje, jestli adresa URL odpovídá trase.

public ref class HttpMethodConstraint : System::Web::Routing::IRouteConstraint
public class HttpMethodConstraint : System.Web.Routing.IRouteConstraint
type HttpMethodConstraint = class
    interface IRouteConstraint
Public Class HttpMethodConstraint
Implements IRouteConstraint
Dědičnost
HttpMethodConstraint
Implementuje

Příklady

Následující příklad ukazuje objekt, Route jehož Constraints vlastnost obsahuje položku s názvem httpMethod klíče a která má hodnotu, která je instancí HttpMethodConstraint třídy.

void Application_Start(object sender, EventArgs e) 
{
    RegisterRoutes(RouteTable.Routes);
}

public static void RegisterRoutes(RouteCollection routes)
{
    string[] allowedMethods = { "GET", "POST" };
    HttpMethodConstraint methodConstraints = new HttpMethodConstraint(allowedMethods);

    Route reportRoute = new Route("{locale}/{year}", new ReportRouteHandler());
    reportRoute.Constraints = new RouteValueDictionary { { "httpMethod", methodConstraints } };

    routes.Add(reportRoute);
}
Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
    RegisterRoutes(RouteTable.Routes)
End Sub

Shared Sub RegisterRoutes(ByVal routes As RouteCollection)
    Dim urlPattern As String
    Dim reportRoute As Route
    Dim allowedMethods() As String = {"GET", "POST"}
    Dim methodConstraints As HttpMethodConstraint  
    
    methodConstraints = New HttpMethodConstraint(allowedMethods)
    
    Dim constraintValues = New With {.httpMethod = methodConstraints}
    
    urlPattern = "{locale}/{year}"
    
    reportRoute = New Route(urlPattern, New ReportRouteHandler)
    reportRoute.Constraints = New RouteValueDictionary(constraintValues)
    
    routes.Add(reportRoute)
End Sub

Poznámky

Třída HttpMethodConstraint umožňuje omezit porovnávání tras na určité příkazy HTTP. Můžete například určit, že trasa je považována za shodu pro adresu URL pouze v případě, že příkaz HTTP pro požadavek je POST.

Chcete-li nastavit omezení pro porovnávání tras, nastavte Constraints vlastnost Route třídy na instanci RouteValueDictionary třídy. Pokud chcete nastavit omezení příkazů HTTP, nastavte hodnotu jednoho prvku slovníku na HttpMethodConstraint objekt a klíč na libovolný název.

HttpMethodConstraint V metodě zahrnete všechny příkazy HTTP, které jsou povoleny pro trasu, když ASP.NET směrování určuje, zda trasa odpovídá adrese URL.

Konstruktory

Name Description
HttpMethodConstraint(String[])

Inicializuje novou instanci HttpMethodConstraint třídy pomocí příkazů HTTP, které jsou povoleny pro trasu.

Vlastnosti

Name Description
AllowedMethods

Získá kolekci povolených příkazů HTTP pro trasu.

Metody

Name Description
Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetType()

Získá Type aktuální instance.

(Zděděno od Object)
Match(HttpContextBase, Route, String, RouteValueDictionary, RouteDirection)

Určuje, jestli byl požadavek proveden pomocí příkazu HTTP, který je jedním z povolených příkazů pro trasu.

MemberwiseClone()

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Explicitní implementace rozhraní

Name Description
IRouteConstraint.Match(HttpContextBase, Route, String, RouteValueDictionary, RouteDirection)

Popis tohoto člena naleznete v tématu Match(HttpContextBase, Route, String, RouteValueDictionary, RouteDirection).

Platí pro

Viz také