HttpRequestMessageProperty Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет доступ к HTTP-запросу на получение доступа к дополнительным сведениям, которые становятся доступными для запросов, отправляемых через протокол 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
- Наследование
-
HttpRequestMessageProperty
- Реализации
-
IMessageProperty System.ServiceModel.Channels.IMergeEnabledMessageProperty
Примеры
В следующем примере кода показано, как задать несколько свойств в экземпляре этого класса и внедрить этот экземпляр в сообщение.
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
Комментарии
Это класс общего назначения, дающий разработчику прямой доступ к сведениям об HTTP-запросе, которые могут использоваться для инкапсулирования ориентированной на протокол HTTP информации. Одним из примеров использования этого класса является поддержка служб, реализованных в соответствии с архитектурой передачи репрезентативного состояния (REST).
Этот класс обеспечивает поддержку следующих сценариев.
Изменяет используемую для каждого запроса HTTP-команду.
Позволяет задавать и запрашивать пары HTTP-заголовков (ключ, значение) с использованием запросов.
Позволяет задавать строку запроса для HTTP-запроса.
Этот класс может использоваться классом HttpTransportBindingElement и связанными с ним классами.
Это свойство добавляется во входящие сообщения.
В исходящих сообщениях это свойство вызывает следующее.
Объект QueryString добавлен в RequestUri.
Headers добавляется в набор заголовков HTTP для передачи.
Конструкторы
HttpRequestMessageProperty() |
Инициализирует новый экземпляр класса HttpRequestMessageProperty. |
Свойства
Headers |
Возвращает заголовки HTTP из HTTP-запроса. |
HttpRequestMessage |
Предоставляет доступ к HTTP-запросу на получение доступа к дополнительным сведениям, которые становятся доступными для запросов, отправляемых через протокол HTTP, и предоставление ответа на эти сведения. |
Method |
Возвращает или задает команду HTTP для HTTP-запроса. |
Name |
Возвращает имя свойства сообщения, связанное с классом HttpRequestMessageProperty. |
QueryString |
Возвращает или задает строку запроса для HTTP-запроса. |
SuppressEntityBody |
Возвращает или задает значение, указывающее, игнорируется ли тело сообщения (в этом случае отправляются только его заголовки). |
Методы
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
Явные реализации интерфейса
IMergeEnabledMessageProperty.TryMergeWithProperty(Object) |
Предоставляет доступ к HTTP-запросу на получение доступа к дополнительным сведениям, которые становятся доступными для запросов, отправляемых через протокол HTTP, и предоставление ответа на эти сведения. |
IMessageProperty.CreateCopy() |
Создает и возвращает копию текущего объекта. |