HttpRequestMessageProperty Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Proporciona acceso a la solicitud HTTP para obtener acceso y responder a la información adicional habilitada para las solicitudes realizadas a través del protocolo 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
- Herencia
-
HttpRequestMessageProperty
- Implementaciones
-
IMessageProperty System.ServiceModel.Channels.IMergeEnabledMessageProperty
Ejemplos
El código siguiente muestra cómo establecer algunas de las propiedades en una instancia de esta clase e incorporar la instancia a un mensaje.
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
Comentarios
Ésta es una clase de uso general que da al programador acceso directo a la información de la solicitud HTTP, que se puede utilizar para encapsular la información específica del HTTP. Un ejemplo del uso de esta clase es admitir los servicios implementados de acuerdo con la arquitectura de Representational State Transfer (REST).
Esta clase habilita la compatibilidad para los escenarios siguientes:
Varía el verbo HTTP utilizado para cada solicitud.
Permite establecer y consultar por solicitud los pares del encabezado HTTP (clave, valor).
Permite especificar la cadena de consulta para una solicitud HTTP.
HttpTransportBindingElement y las clases relacionadas pueden utilizar esta clase.
Para los mensajes entrantes, esta propiedad se agrega a los mensajes.
Esta propiedad hace que a los mensajes salientes les pase lo siguiente:
QueryString se anexa a RequestUri.
Headers se agrega a los encabezados HTTP establecidos para transmitirse.
Constructores
HttpRequestMessageProperty() |
Inicializa una nueva instancia de la clase HttpRequestMessageProperty. |
Propiedades
Headers |
Obtiene los encabezados HTTP a partir de la solicitud HTTP. |
HttpRequestMessage |
Proporciona acceso a la solicitud HTTP para obtener acceso y responder a la información adicional habilitada para las solicitudes realizadas a través del protocolo HTTP. |
Method |
Obtiene o establece el verbo HTTP para la solicitud HTTP. |
Name |
Obtiene el nombre de la propiedad del mensaje asociada a la clase HttpRequestMessageProperty. |
QueryString |
Obtiene o establece la cadena de consulta para la solicitud HTTP. |
SuppressEntityBody |
Obtiene o establece un valor que indica si se omite el cuerpo del mensaje y sólo se envían los encabezados. |
Métodos
Equals(Object) |
Determina si el objeto especificado es igual que el objeto actual. (Heredado de Object) |
GetHashCode() |
Sirve como la función hash predeterminada. (Heredado de Object) |
GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
MemberwiseClone() |
Crea una copia superficial del Object actual. (Heredado de Object) |
ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
Implementaciones de interfaz explícitas
IMergeEnabledMessageProperty.TryMergeWithProperty(Object) |
Proporciona acceso a la solicitud HTTP para obtener acceso y responder a la información adicional habilitada para las solicitudes realizadas a través del protocolo HTTP. |
IMessageProperty.CreateCopy() |
Crea y devuelve una copia del objeto actual. |