SoapHeaderAttribute SoapHeaderAttribute SoapHeaderAttribute SoapHeaderAttribute Class

Definition

Dieses Attribut wird auf eine XML-Webdienstmethode oder einen XML-Webdienstclient angewendet, um einen SOAP-Header anzugeben, den die XML-Webdienstmethode bzw. der XML-Webdienstclient verarbeiten kann.This attribute is applied to an XML Web service method or an XML Web service client to specify a SOAP header that the XML Web service method or XML Web service client can process. Diese Klasse kann nicht vererbt werden.This class cannot be inherited.

public ref class SoapHeaderAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Method, AllowMultiple=true, Inherited=true)]
[System.AttributeUsage(System.AttributeTargets.Method, AllowMultiple=true)]
public sealed class SoapHeaderAttribute : Attribute
type SoapHeaderAttribute = class
    inherit Attribute
Public NotInheritable Class SoapHeaderAttribute
Inherits Attribute
Vererbung
SoapHeaderAttributeSoapHeaderAttributeSoapHeaderAttributeSoapHeaderAttribute
Attribute

Beispiele

Der folgende MyWebService XML-Webdienst definiert SoapHeader einen vom MyHeaderTyp.The following MyWebService XML Web service defines one SoapHeader of type MyHeader. Die XML-Webdienst Methode erfordert, dass der Client die XML-Webdienst Methode SoapHeadermit diesem aufruft. HelloThe Hello XML Web service method requires the client to invoke the XML Web service method with this SoapHeader. Der Hello XML-Webdienst fängt auch alle anderen SOAP- MyHeaderHeader als ab.The Hello XML Web service also catches any SOAP headers other than MyHeader.

<%@ WebService Language="C#" Class="MyWebService"%>
using System.Web.Services;
using System.Web.Services.Protocols;

// Define a SOAP header by deriving from the SoapHeader base class.
// The header contains just one string value.
public class MyHeader : SoapHeader {
    public string MyValue;
}

public class MyWebService {
    // Member variable to receive the contents of the MyHeader SoapHeader.
    public MyHeader myHeader;

    // Member variable to receive all headers other than MyHeader.
    public SoapUnknownHeader[] unknownHeaders;
 
    [WebMethod]
    [SoapHeader("myHeader", Direction=SoapHeaderDirection.InOut)]

    // Receive any SOAP headers other than MyHeader.
    [SoapHeader("unknownHeaders")]
    public void Hello() {

       // Process the MyHeader SoapHeader.
       if (myHeader.MyValue == "Some string") {
          // Process the header.
       }
       foreach (SoapHeader header in unknownHeaders) {
           // Perform some processing on header.
           
           // For those headers that cannot be processed,
           // set the DidUnderstand property to false.
           header.DidUnderstand = false;
       }
    }
}
<%@ WebService Language="VB" Class="MyWebService"%>
Imports System.Web.Services
Imports System.Web.Services.Protocols

' Define a SOAP header by deriving from the SoapHeader base class.
' The header contains just one string value.
Public Class MyHeader
    Inherits SoapHeader
    Public MyValue As String
End Class

Public Class MyWebService
    ' Member variable to receive the contents of the MyHeader SoapHeader.
    Public myHeader As MyHeader
    
    ' Member variable to receive all headers other than MyHeader.
    Public unknownHeaders() As SoapUnknownHeader
    
    ' Receive any SOAP headers other than MyHeader.
    <WebMethod, _
        SoapHeader("myHeader", Direction := SoapHeaderDirection.InOut), _
        SoapHeader("unknownHeaders")> _
    Public Sub Hello()        
        
        ' Process the MyHeader SoapHeader.
        If myHeader.MyValue = "Some string" Then
            ' Process the header.
        End If 
        Dim header As SoapHeader
        For Each header In  unknownHeaders
            ' Perform some processing on header
            ' For those headers that cannot be processed, 
            ' set the DidUnderstand to false.
            header.DidUnderstand = False
        Next header
    End Sub
End Class

Hinweise

Die grundlegenden Schritte zum empfangen und Verarbeiten eines SOAP-Headers lauten:The basic steps to receiving and processing a SOAP header are:

  1. Erstellen Sie eine Klasse, SoapHeader die von abgeleitet wird und die im SOAP-Header übergebenen Daten darstellt.Create a class deriving from SoapHeader representing the data passed in the SOAP header.

  2. Fügen Sie der XML-Webdienst Klasse oder der XML-Webdienst-Client Proxy Klasse des in Schritt 1 erstellten Typs ein Mitglied hinzu.Add a member to the XML Web service class or XML Web service client proxy class of the type created in step 1.

  3. Wenden Sie SoapHeaderAttribute einen auf die XML-Webdienst Methode oder die entsprechende Methode in der Proxy Klasse an, und geben Sie dabei den in MemberName Schritt 2 in der-Eigenschaft erstellten Member an.Apply a SoapHeaderAttribute to the XML Web service method or the corresponding method in the proxy class, specifying the member created in step 2 in the MemberName property.

  4. Greifen Sie in der XML-Webdienst Methode oder im XML-Webdienst MemberName -Client Code auf die-Eigenschaft zu, um die im SOAP-Header gesendeten Daten zu verarbeitenWithin the XML Web service method or XML Web service client code, access the MemberName property to process the data sent in the SOAP header.

Weitere Informationen finden Sie unter der MemberName -Eigenschaft.For more details, see the MemberName property.

Konstruktoren

SoapHeaderAttribute(String) SoapHeaderAttribute(String) SoapHeaderAttribute(String) SoapHeaderAttribute(String)

Initialisiert eine neue Instanz der SoapHeaderAttribute-Klasse, wobei der Member der XML-Webdienstklasse festgelegt wird, die den Inhalt des SOAP-Headers darstellt.Initializes a new instance of the SoapHeaderAttribute class, setting the member of the XML Web service class representing the SOAP header contents.

Eigenschaften

Direction Direction Direction Direction

Ruft ab oder legt fest, ob der SOAP-Header für den XML-Webdienst oder den XML-Webdienstclient oder für beide bestimmt ist.Gets or sets whether the SOAP header is intended for the XML Web service or the XML Web service client or both.

MemberName MemberName MemberName MemberName

Ruft den Member der XML-Webdienstklasse ab, die den Inhalt des SOAP-Headers darstellt, oder legt diesen Member fest.Gets or sets the member of the XML Web service class representing the SOAP header contents.

Required Required Required Required

Dieser Member ist veraltet und hat keine Funktion.This member is obsolete and has no functionality.

TypeId TypeId TypeId TypeId

Ruft bei Implementierung in einer abgeleiteten Klasse einen eindeutigen Bezeichner für dieses Attribute ab.When implemented in a derived class, gets a unique identifier for this Attribute.

(Inherited from Attribute)

Methoden

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Gibt einen Wert zurück, der angibt, ob diese Instanz gleich einem angegebenen Objekt ist.Returns a value that indicates whether this instance is equal to a specified object.

(Inherited from Attribute)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Gibt den Hashcode für diese Instanz zurück.Returns the hash code for this instance.

(Inherited from Attribute)
GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute()

Gibt beim Überschreiben in einer abgeleiteten Klasse an, ob der Wert der Instanz der Standardwert für die abgeleitete Klasse ist.When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(Inherited from Attribute)
Match(Object) Match(Object) Match(Object) Match(Object)

Beim Überschreiben in einer abgeleiteten Klasse wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem bestimmten Objekt entspricht.When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(Inherited from Attribute)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Inherited from Object)

Explizite Schnittstellenimplementierungen

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu.Maps a set of names to a corresponding set of dispatch identifiers.

(Inherited from Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _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.Retrieves the type information for an object, which can be used to get the type information for an interface.

(Inherited from Attribute)
_Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32)

Ruft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1).Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(Inherited from Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Stellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit.Provides access to properties and methods exposed by an object.

(Inherited from Attribute)

Gilt für:

Siehe auch