HttpMethodConstraint Classe

Définition

Permet de définir les verbes HTTP autorisés quand le routage ASP.NET détermine si une URL correspond à un itinéraire.

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
Héritage
HttpMethodConstraint
Implémente

Exemples

L’exemple suivant montre un Route objet dont Constraints la propriété contient un élément qui a une clé nommée httpMethod et qui a une valeur qui est une instance de la HttpMethodConstraint classe.

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

Remarques

La HttpMethodConstraint classe vous permet de limiter la correspondance de routage à certains verbes HTTP. Par exemple, vous pouvez spécifier qu’une route est considérée comme une correspondance pour une URL uniquement lorsque le verbe HTTP de la requête est POST.

Pour définir des contraintes pour la correspondance de routage, vous définissez la Constraints propriété de la Route classe sur une instance de la RouteValueDictionary classe. Pour définir une contrainte de verbe HTTP, vous définissez la valeur d’un élément de dictionnaire sur un HttpMethodConstraint objet et la clé sur n’importe quel nom.

Dans la HttpMethodConstraint méthode, vous incluez tous les verbes HTTP autorisés pour l’itinéraire lorsque ASP.NET routage détermine si la route correspond à une URL.

Constructeurs

HttpMethodConstraint(String[])

Initialise une nouvelle instance de la classe HttpMethodConstraint en utilisant les verbes HTTP autorisés pour l’itinéraire.

Propriétés

AllowedMethods

Obtient la collection des verbes HTTP autorisés pour l’itinéraire.

Méthodes

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
Match(HttpContextBase, Route, String, RouteValueDictionary, RouteDirection)

Détermine si la requête a été effectuée avec un verbe HTTP qui est l’un des verbes autorisés pour l’itinéraire.

MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

Implémentations d’interfaces explicites

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

Pour obtenir une description de ce membre, consultez Match(HttpContextBase, Route, String, RouteValueDictionary, RouteDirection).

S’applique à

Voir aussi