Condividi tramite


HttpRequestMessageProperty Classe

Definizione

Fornisce accesso alla richiesta HTTP per accedere e rispondere alle informazioni aggiuntive rese disponibili per le richieste sul protocollo 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
Ereditarietà
HttpRequestMessageProperty
Implementazioni
IMessageProperty System.ServiceModel.Channels.IMergeEnabledMessageProperty

Esempio

Il seguente codice mostra come impostare numerose proprietà in un'istanza di questa classe e incorporarle in un messaggio.

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

Commenti

Si tratta di una classe di utilizzo generale che consente allo sviluppatore di accedere direttamente alle informazioni sulla richiesta HTTP che possono essere utilizzate per incapsulare informazioni specifiche per HTTP. Questa classe viene ad esempio utilizzata per supportare i servizi implementati in conformità con l'architettura Representational State Transfer (REST).

Questa classe attiva il supporto per gli scenari seguenti:

  • Varia il verbo HTTP utilizzato per ogni richiesta.

  • Consente di impostare coppie di intestazioni HTTP (chiave, valore) e di eseguire query su richiesta.

  • Consente di specificare la stringa di query per una richiesta HTTP.

Questa classe può essere utilizzata da HttpTransportBindingElement e dalle classi correlate.

Per i messaggi in arrivo, questa proprietà viene aggiunta ai messaggi.

Per i messaggi in uscita, questa proprietà fa sì che si verifichi quanto segue:

Costruttori

HttpRequestMessageProperty()

Inizializza una nuova istanza della classe HttpRequestMessageProperty.

Proprietà

Headers

Ottiene le intestazioni HTTP dalla richiesta HTTP.

HttpRequestMessage

Fornisce accesso alla richiesta HTTP per accedere e rispondere alle informazioni aggiuntive rese disponibili per le richieste sul protocollo HTTP.

Method

Ottiene o imposta il verbo HTTP per la richiesta HTTP.

Name

Ottiene il nome della proprietà del messaggio associata alla classe HttpRequestMessageProperty.

QueryString

Ottiene o imposta la stringa di query per la richiesta HTTP.

SuppressEntityBody

Ottiene o imposta un valore che indica se il corpo del messaggio viene ignorato e se vengono inviate solo le intestazioni.

Metodi

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Implementazioni dell'interfaccia esplicita

IMergeEnabledMessageProperty.TryMergeWithProperty(Object)

Fornisce accesso alla richiesta HTTP per accedere e rispondere alle informazioni aggiuntive rese disponibili per le richieste sul protocollo HTTP.

IMessageProperty.CreateCopy()

Crea e restituisce una copia dell'oggetto corrente.

Si applica a