Exportar (0) Imprimir
Expandir todo
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

MessageParameterAttribute (Clase)

Controla el nombre de los nombres de parámetros de respuesta y solicitud. No se puede utilizar con Message ni contratos de mensajes.

System.Object
  System.Attribute
    System.ServiceModel.MessageParameterAttribute

Espacio de nombres:  System.ServiceModel
Ensamblado:  System.ServiceModel (en System.ServiceModel.dll)

[AttributeUsageAttribute(AttributeTargets.Parameter|AttributeTargets.ReturnValue, Inherited = false)]
public sealed class MessageParameterAttribute : Attribute

El tipo MessageParameterAttribute expone los siguientes miembros.

  NombreDescripción
Método públicoCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsMessageParameterAttributeInicializa una nueva instancia de la clase MessageParameterAttribute.
Arriba

  NombreDescripción
Propiedad públicaCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsNameObtiene o establece el atributo de nombre del parámetro en el esquema XML (XSD).
Propiedad públicaTypeIdCuando se implementa en una clase derivada, obtiene un identificador único para este Attribute. (Se hereda de Attribute).
Arriba

  NombreDescripción
Método públicoCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsEqualsInfraestructura. Devuelve un valor que indica si esta instancia equivale al objeto especificado. (Se hereda de Attribute).
Método públicoCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsGetHashCodeDevuelve el código hash de esta instancia. (Se hereda de Attribute).
Método públicoCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsGetType Obtiene el Type de la instancia actual. (Se hereda de Object).
Método públicoIsDefaultAttributeCuando se invalida en una clase derivada, indica si el valor de esta instancia es el valor predeterminado para la clase derivada. (Se hereda de Attribute).
Método públicoMatch Cuando se invalida en una clase derivada, devuelve un valor que indica si esta instancia es igual al objeto especificado. (Se hereda de Attribute).
Método públicoCompatible con Biblioteca de clases portableCompatible con .NET para aplicaciones de la Tienda WindowsToString Retorna una cadena que representa al objeto actual. (Se hereda de Object).
Arriba

  NombreDescripción
Implementación explícita de interfacesMétodo privado_Attribute.GetIDsOfNamesAsigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío. (Se hereda de Attribute).
Implementación explícita de interfacesMétodo privado_Attribute.GetTypeInfoObtiene la información de tipos de un objeto, que puede utilizarse para obtener la información de tipos de una interfaz. (Se hereda de Attribute).
Implementación explícita de interfacesMétodo privado_Attribute.GetTypeInfoCount

Recupera el número de interfaces de tipo de información que suministra un objeto (0 ó 1)

(Se hereda de Attribute).
Implementación explícita de interfacesMétodo privado_Attribute.InvokeProporciona acceso a las propiedades y los métodos expuestos por un objeto. (Se hereda de Attribute).
Arriba

Utilice el MessageParameterAttribute para controlar el nombre del parámetro o el valor devuelto. Este atributo no tiene efecto alguno si el atributo MessageContractAttribute marca los parámetros.

NotaNota

El valor de los nombres de parámetro en la firma de la operación forma parte del contrato y distingue entre mayúsculas y minúsculas. Utilice este atributo cuando necesite distinguir entre el nombre de parámetro local y los metadatos que describen la operación para las aplicaciones de cliente.

Para obtener más información sobre control de la serialización de los contenidos de un cuerpo SOAP sin modificar la propia envoltura SOAP predeterminada, consulte System.Runtime.Serialization.DataContractAttribute, Especificación de transferencia de datos en contratos de servicio, y Utilización de contratos de datos.

Para obtener más información sobre creación de contratos de mensaje, vea Usar contratos de mensaje.

El siguiente ejemplo de código muestra el uso de MessageParameterAttribute para establecer el nombre del parámetro y el valor devuelto en metadatos.


using System;
using System.Collections.Generic;
using System.ServiceModel;
using System.Text;

namespace Microsoft.WCF.Documentation
{
  [ServiceContract(Namespace="http://microsoft.wcf.documentation")]
  public interface ISampleService{
    [OperationContract]
    [return:MessageParameter(Name = "Output")]
    string SampleMethod([MessageParameter(Name = "Input")]string msg);
  }

  /*
   The preceding use of MessageParameterAttribute generates the following XSD:

<?xml version="1.0" encoding="utf-8" ?> 
  <xs:schema 
    elementFormDefault="qualified" 
    targetNamespace="http://microsoft.wcf.documentation" 
    xmlns:xs="http://www.w3.org/2001/XMLSchema" 
    xmlns:tns="http://microsoft.wcf.documentation">
    <xs:element name="SampleMethod">
      <xs:complexType>
        <xs:sequence>
          <xs:element minOccurs="0" name="Input" nillable="true" type="xs:string" /> 
        </xs:sequence>
      </xs:complexType>
    </xs:element>
    <xs:element name="SampleMethodResponse">
      <xs:complexType>
        <xs:sequence>
          <xs:element minOccurs="0" name="Output" nillable="true" type="xs:string" /> 
        </xs:sequence>
      </xs:complexType>
    </xs:element>
  </xs:schema>

   And the message sent is edited for clarity:
  <s:Body>
    <SampleMethod xmlns="http://microsoft.wcf.documentation">
      <Input>hello!</Input>
    </SampleMethod>
  </s:Body>   
   */


El siguiente ejemplo de código muestra el contrato de servicio generado para el servicio precedente. Observe que el nombre del parámetro ahora es Input.


[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
[System.ServiceModel.ServiceContractAttribute(Namespace="http://microsoft.wcf.documentation", ConfigurationName="ISampleService")]
public interface ISampleService
{

    [System.ServiceModel.OperationContractAttribute(
      Action="http://microsoft.wcf.documentation/ISampleService/SampleMethod",
      ReplyAction="http://microsoft.wcf.documentation/ISampleService/SampleMethodResponse"
    )]
    [return: System.ServiceModel.MessageParameterAttribute(Name="Output")]
    string SampleMethod(string Input);
}


.NET Framework

Compatible con: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Compatible con: 4, 3.5 SP1

Biblioteca de clases portable

Compatible con: Biblioteca de clases portable

.NET para aplicaciones de la Tienda Windows

Compatible con: Windows 8

.NET para aplicaciones de Windows Phone

Compatible con: Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2015 Microsoft