HttpRequestMessageProperty Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Zapewnia dostęp do żądania HTTP w celu uzyskania dostępu do dodatkowych informacji udostępnionych dla żądań za pośrednictwem protokołu HTTP i odpowiadania na nie.
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
- Dziedziczenie
-
HttpRequestMessageProperty
- Implementuje
-
IMessageProperty System.ServiceModel.Channels.IMergeEnabledMessageProperty
Przykłady
Poniższy kod pokazuje, jak ustawić kilka właściwości w wystąpieniu tej klasy i dołączyć wystąpienie do komunikatu.
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
Uwagi
Jest to klasa ogólnego przeznaczenia, która zapewnia deweloperowi bezpośredni dostęp do informacji o żądaniu HTTP, których można użyć do hermetyzacji informacji specyficznych dla protokołu HTTP. Jednym z przykładów użycia tej klasy jest obsługa usług wdrożonych zgodnie z architekturą Rest (Representational State Transfer).
Ta klasa umożliwia obsługę następujących scenariuszy:
Zmienia czasownik HTTP używany dla każdego żądania.
Umożliwia ustawienie par nagłówka HTTP (klucza, wartości) i wykonywanie zapytań przez żądanie.
Umożliwia określenie ciągu zapytania dla żądania HTTP.
Ta klasa może być używana przez HttpTransportBindingElement klasy i powiązane.
W przypadku komunikatów przychodzących ta właściwość jest dodawana do komunikatów.
W przypadku komunikatów wychodzących ta właściwość powoduje wystąpienie następujących sytuacji:
QueryStringjest dołączany do .RequestUri
Headers jest dodawany do nagłówków HTTP ustawionych do przesyłania.
Konstruktory
HttpRequestMessageProperty() |
Inicjuje nowe wystąpienie klasy HttpRequestMessageProperty. |
Właściwości
Headers |
Pobiera nagłówki HTTP z żądania HTTP. |
HttpRequestMessage |
Zapewnia dostęp do żądania HTTP w celu uzyskania dostępu do dodatkowych informacji udostępnionych dla żądań za pośrednictwem protokołu HTTP i odpowiadania na nie. |
Method |
Pobiera lub ustawia czasownik HTTP dla żądania HTTP. |
Name |
Pobiera nazwę właściwości komunikatu skojarzonej z klasą HttpRequestMessageProperty . |
QueryString |
Pobiera lub ustawia ciąg zapytania dla żądania HTTP. |
SuppressEntityBody |
Pobiera lub ustawia wartość wskazującą, czy treść wiadomości jest ignorowana i wysyłane są tylko nagłówki. |
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 bieżące wystąpienie. (Odziedziczone po Object) |
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
IMergeEnabledMessageProperty.TryMergeWithProperty(Object) |
Zapewnia dostęp do żądania HTTP w celu uzyskania dostępu do dodatkowych informacji udostępnionych dla żądań za pośrednictwem protokołu HTTP i odpowiadania na nie. |
IMessageProperty.CreateCopy() |
Tworzy i zwraca kopię bieżącego obiektu. |