Udostępnij przez


HttpMethodConstraint Klasa

Definicja

Umożliwia zdefiniowanie, które czasowniki HTTP są dozwolone, gdy ASP.NET routingu określa, czy adres URL jest zgodny z trasą.

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
Dziedziczenie
HttpMethodConstraint
Implementuje

Przykłady

W poniższym przykładzie pokazano Route obiekt, którego Constraints właściwość zawiera element, który ma klucz o nazwie httpMethod i który ma wartość, która jest wystąpieniem HttpMethodConstraint klasy.

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

Uwagi

Klasa HttpMethodConstraint umożliwia ograniczenie dopasowywania tras do niektórych czasowników HTTP. Można na przykład określić, że trasa jest traktowana jako dopasowanie adresu URL tylko wtedy, gdy czasownik HTTP dla żądania to POST.

Aby ustawić ograniczenia dotyczące dopasowywania tras, należy ustawić Constraints właściwość Route klasy na wystąpienie RouteValueDictionary klasy. Aby ustawić ograniczenie czasownika HTTP, należy ustawić wartość jednego elementu słownika na obiekt i klucz na dowolną HttpMethodConstraint nazwę.

W metodzie HttpMethodConstraint uwzględniasz wszystkie czasowniki HTTP, które są dozwolone dla trasy, gdy ASP.NET routing określa, czy trasa jest zgodna z adresem URL.

Konstruktory

HttpMethodConstraint(String[])

Inicjuje HttpMethodConstraint nowe wystąpienie klasy przy użyciu czasowników HTTP dozwolonych dla trasy.

Właściwości

AllowedMethods

Pobiera kolekcję dozwolonych czasowników HTTP dla trasy.

Metody

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
Match(HttpContextBase, Route, String, RouteValueDictionary, RouteDirection)

Określa, czy żądanie zostało wykonane z czasownikiem HTTP, który jest jednym z dozwolonych zleceń dla trasy.

MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Jawne implementacje interfejsu

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

Aby uzyskać opis tego członka, zobacz Match(HttpContextBase, Route, String, RouteValueDictionary, RouteDirection).

Dotyczy

Zobacz też