Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

MessageParameterAttribute-Klasse

 

Steuert den Namen der Anforderung und die Namen der Antwortparameter. Kann nicht mit Message oder Meldungsverträgen verwendet werden.

Namespace:   System.ServiceModel
Assembly:  System.ServiceModel (in System.ServiceModel.dll)

System.Object
  System.Attribute
    System.ServiceModel.MessageParameterAttribute

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

NameBeschreibung
System_CAPS_pubmethodMessageParameterAttribute()

Initialisiert eine neue Instanz der MessageParameterAttribute-Klasse.

NameBeschreibung
System_CAPS_pubpropertyName

Ruft das Namensattribut des Parameters im XML-Schema (XSD) ab, bzw. legt ihn fest.

System_CAPS_pubpropertyTypeId

Ruft bei Implementierung in einer abgeleiteten Klasse einen eindeutigen Bezeichner für dieses Attribute ab.(Geerbt von Attribute.)

NameBeschreibung
System_CAPS_pubmethodEquals(Object)

Diese API unterstützt die producto-Infrastruktur und sollte nicht direkt aus Ihrem Code verwendet werden. Gibt einen Wert zurück, der angibt, ob diese Instanz gleich einem angegebenen Objekt ist.(Geerbt von Attribute.)

System_CAPS_pubmethodGetHashCode()

Gibt den Hashcode für diese Instanz zurück.(Geerbt von Attribute.)

System_CAPS_pubmethodGetType()

Ruft den Type der aktuellen Instanz ab.(Geerbt von Object.)

System_CAPS_pubmethodIsDefaultAttribute()

Gibt beim Überschreiben in einer abgeleiteten Klasse an, ob der Wert der Instanz der Standardwert für die abgeleitete Klasse ist.(Geerbt von Attribute.)

System_CAPS_pubmethodMatch(Object)

Ruft beim Überschreiben in einer abgeleiteten Klasse gibt einen Wert, der angibt, ob diese Instanz gleich ein angegebenen Objekt ist.(Geerbt von Attribute.)

System_CAPS_pubmethodToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.(Geerbt von Object.)

NameBeschreibung
System_CAPS_pubinterfaceSystem_CAPS_privmethod_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu.(Geerbt von Attribute.)

System_CAPS_pubinterfaceSystem_CAPS_privmethod_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Ruft die Typinformationen für ein Objekt ab, mit deren Hilfe die Typinformationen für eine Schnittstelle abgerufen werden können.(Geerbt von Attribute.)

System_CAPS_pubinterfaceSystem_CAPS_privmethod_Attribute.GetTypeInfoCount(UInt32)

Ruft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1).(Geerbt von Attribute.)

System_CAPS_pubinterfaceSystem_CAPS_privmethod_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Stellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit.(Geerbt von Attribute.)

Verwenden Sie MessageParameterAttribute, um den Namen des Parameters oder den Rückgabewert zu steuern. Dieses Attribut hat keine Auswirkung, wenn die Parameter durch das MessageContractAttribute-Attribut gekennzeichnet sind.

System_CAPS_noteHinweis

Der Wert der Parameternamen in der Vorgangssignatur ist Teil des Vertrags, und die Groß- und Kleinschreibung wird beachtet. Verwenden Sie dieses Attribut, wenn Sie zwischen dem lokalen Parameternamen und den Metadaten unterscheiden müssen, die den Vorgang für Client-Anwendungen beschreiben.

Weitere Informationen finden Sie unter zum Steuern der Serialisierung des Inhalts eines SOAP-Texts ohne den Standard-SOAP-Envelope selbst zu ändern, finden Sie unter System.Runtime.Serialization.DataContractAttribute, Angeben von Datenübertragung in Dienstverträgen und Verwenden von Datenverträgen.

Weitere Informationen finden Sie unter zum Erstellen von Meldungsverträgen finden Sie unter Verwendung von Nachrichtenverträgen.

Im folgenden Codebeispiel wird die Verwendung von MessageParameterAttribute zum Einrichten des Namens des Parameters und des Rückgabewerts in den Metadaten veranschaulicht.

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>   
   */

Im folgenden Beispiel wird der generierte Dienstvertrag für den vorausgehenden Dienst dargestellt. Beachten Sie, dass der Name des Parameters jetzt Input lautet.

[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);
}

Universal Windows Platform
Verfügbar seit 8
.NET Framework
Verfügbar seit 3.0
Portable Class Library
Unterstützt in: portable .NET platforms
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.0

Öffentliche statische (in Visual Basic freigegebene) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Zurück zum Anfang
Anzeigen: