SoapHeaderAttribute(String) Constructor

Definition

Initializes a new instance of the SoapHeaderAttribute class, setting the member of the XML Web service class representing the SOAP header contents.

public:
 SoapHeaderAttribute(System::String ^ memberName);
public SoapHeaderAttribute (string memberName);
new System.Web.Services.Protocols.SoapHeaderAttribute : string -> System.Web.Services.Protocols.SoapHeaderAttribute
Public Sub New (memberName As String)

Parameters

memberName
String

The member of the XML Web service class representing the SOAP header contents. The MemberName property will be set to the value of this parameter.

Examples

The following MyWebService XML Web service defines one SoapHeader of type MyHeader. The Hello XML Web service method specifies the myHeader member as the MemberName property to receive the contents of MyHeader SOAP headers passed into the XML Web service method.

#using <System.EnterpriseServices.dll>
#using <System.Web.Services.dll>

using namespace System;
using namespace System::Web::Services;
using namespace System::Web::Services::Protocols;

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

public ref class MyWebService
{
public:

   // Member variable to receive the contents of the MyHeader SOAP header.
   MyHeader^ myHeader;

   [WebMethod]
   [SoapHeader("myHeader",Direction=SoapHeaderDirection::InOut)]
   void Hello(){}

};

using System;
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 SOAP header.
    public MyHeader myHeader;
 
    [WebMethod]
    [SoapHeader("myHeader", Direction=SoapHeaderDirection.InOut)]
    public void Hello() {
    }
}
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 SOAP header.
   Public myHeader As MyHeader

   
   <WebMethod, _ 
    SoapHeader("myHeader", Direction := SoapHeaderDirection.InOut)> _
   Public Sub Hello()

   End Sub
End Class

Remarks

An XML Web service client or XML Web service can specify the SOAP headers it wants to process for specific XML Web service methods by applying a SoapHeaderAttribute to the XML Web service method in the XML Web service class or the corresponding method in the proxy class. In order for the XML Web service method to receive the contents of the SOAP header, a member is added to the XML Web service class of a Type derived from SoapHeader. Likewise, an XML Web service client adds a member to the proxy class deriving from SoapHeader. That Type deriving from SoapHeader represents the contents of the SOAP header and is created by the developer of the XML Web service or XML Web service client that wants to receive the SOAP header. Once the class is created, a SoapHeaderAttribute can be applied to the XML Web service method or corresponding method in the XML Web service client proxy class specifying the member to receive the SOAP header contents with the memberName parameter to this constructor or the MemberName property.

An XML Web service method can receive multiple SOAP headers by adding multiple members to the XML Web service class or the XML Web service proxy class and in turn applying multiple SoapHeaderAttribute attributes to the XML Web service method.

To receive and process unknown SOAP headers at the time the XML Web service is written, specify the Type of the member to be either SoapUnknownHeader, SoapHeader or an array of either class.

Applies to