Partager via


HttpRequestMessageProperty Classe

Définition

Fournit l'accès à la requête HTTP pour accéder et répondre aux informations supplémentaires mises à disposition pour les requêtes sur le protocole HTTP.

public ref class HttpRequestMessageProperty sealed : System::ServiceModel::Channels::IMessageProperty
public ref class HttpRequestMessageProperty sealed : System::ServiceModel::Channels::IMergeEnabledMessageProperty, System::ServiceModel::Channels::IMessageProperty
public ref class HttpRequestMessageProperty sealed
public sealed class HttpRequestMessageProperty : System.ServiceModel.Channels.IMessageProperty
public sealed class HttpRequestMessageProperty : System.ServiceModel.Channels.IMergeEnabledMessageProperty, System.ServiceModel.Channels.IMessageProperty
public sealed class HttpRequestMessageProperty
type HttpRequestMessageProperty = class
    interface IMessageProperty
type HttpRequestMessageProperty = class
    interface IMessageProperty
    interface IMergeEnabledMessageProperty
type HttpRequestMessageProperty = class
Public NotInheritable Class HttpRequestMessageProperty
Implements IMessageProperty
Public NotInheritable Class HttpRequestMessageProperty
Implements IMergeEnabledMessageProperty, IMessageProperty
Public NotInheritable Class HttpRequestMessageProperty
Héritage
HttpRequestMessageProperty
Implémente
IMessageProperty System.ServiceModel.Channels.IMergeEnabledMessageProperty

Exemples

Le code suivant montre comment définir plusieurs propriétés dans une instance de cette classe et incorporer l'instance dans un message.

static Message BuildMessage()
{
    Message messageToSend = null;
    HttpRequestMessageProperty reqProps = new HttpRequestMessageProperty();
    reqProps.SuppressEntityBody = false;
    reqProps.Headers.Add("CustomHeader", "Test Value");
    reqProps.Headers.Add(HttpRequestHeader.UserAgent, "my user agent");

    try
    {
        messageToSend = Message.CreateMessage(MessageVersion.Soap11, "http://tempuri.org/IUntypedService/ProcessMessage", "Hello WCF");
    }
    catch (Exception e)
    {
        Console.WriteLine("got exception when sending message: " + e.ToString());
    }

    messageToSend.Properties[HttpRequestMessageProperty.Name] = reqProps;
    return messageToSend;
}
Private Shared Function BuildMessage() As Message
    Dim messageToSend As Message = Nothing
    Dim reqProps As New HttpRequestMessageProperty()
    reqProps.SuppressEntityBody = False
    reqProps.Headers.Add("CustomHeader", "Test Value")
    reqProps.Headers.Add(HttpRequestHeader.UserAgent, "my user agent")

    Try
        messageToSend = Message.CreateMessage(MessageVersion.Soap11, "http://tempuri.org/IUntypedService/ProcessMessage", "Hello WCF")
    Catch e As Exception
        Console.WriteLine("got exception when sending message: " & e.ToString())
    End Try

    messageToSend.Properties(HttpRequestMessageProperty.Name) = reqProps
    Return messageToSend
End Function

Remarques

Il s'agit d'une classe à usage général qui donne au développeur un accès direct aux informations de requête HTTP qui peuvent être utilisées pour encapsuler des informations spécifiques au HTTP. Une des utilisations de cette classe inclut la prise en charge des services implémentés conformément à l'architecture REST (Representational State Transfer).

Cette classe permet de prendre en charge les scénarios suivants :

  • Varie le verbe HTTP utilisé pour chaque requête.

  • Autorise la définition et l'interrogation à l'aide d'une requête des paires d'en-tête HTTP (index, valeur).

  • Autorise la spécification de la chaîne de requête pour une requête HTTP.

Cette classe peut être utilisée par HttpTransportBindingElement et les classes connexes.

Pour les messages entrants, cette propriété est ajoutée aux messages.

Pour les messages sortants, cette propriété déclenche les événements suivants :

Constructeurs

HttpRequestMessageProperty()

Initialise une nouvelle instance de la classe HttpRequestMessageProperty.

Propriétés

Headers

Obtient les en-têtes HTTP de la requête HTTP.

HttpRequestMessage

Fournit l'accès à la requête HTTP pour accéder et répondre aux informations supplémentaires mises à disposition pour les requêtes sur le protocole HTTP.

Method

Obtient ou définit le verbe HTTP pour la requête HTTP.

Name

Obtient le nom de la propriété de message associée à la classe HttpRequestMessageProperty.

QueryString

Obtient ou définit la chaîne de requête pour la requête HTTP.

SuppressEntityBody

Obtient ou définit une valeur qui indique si le corps des messages est ignoré et seuls les en-têtes sont envoyés.

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)
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

IMergeEnabledMessageProperty.TryMergeWithProperty(Object)

Fournit l'accès à la requête HTTP pour accéder et répondre aux informations supplémentaires mises à disposition pour les requêtes sur le protocole HTTP.

IMessageProperty.CreateCopy()

Crée et retourne une copie de l'objet actif.

S’applique à