This documentation is archived and is not being maintained.

SoapHeaderDirection Enumeration

Specifies whether the recipient of the SoapHeader is the XML Web service, the XML Web service client, or both.

This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.

Namespace:  System.Web.Services.Protocols
Assembly:  System.Web.Services (in System.Web.Services.dll)

[FlagsAttribute]
public enum SoapHeaderDirection

Member nameDescription
Supported by the .NET Compact FrameworkInSpecifies the SoapHeader is sent to the XML Web service.
Supported by the .NET Compact FrameworkOutSpecifies the SoapHeader is sent to the XML Web service client.
Supported by the .NET Compact FrameworkInOutSpecifies the SoapHeader is sent to both the XML Web service and the XML Web service client.
Supported by the .NET Compact FrameworkFaultSpecifies the SoapHeader is sent to the XML Web service client when an exception is thrown by the XML Web service method.

A SoapHeaderAttribute can be applied to either an XML Web service method or a method of a proxy class to an XML Web service. In either case, the recipient(s) are specified by the Direction property of SoapHeaderAttribute. To specify that an XML Web service method returns a SOAP header when an exception is thrown during its execution, apply an SoapHeaderAttribute to the method and set the Direction property to Fault.

Version 1.0 of the .NET Framework does not support the Fault value.

The following XML Web service method specifies that the myHeader SoapHeader is sent from the XML Web service client to the XML Web service and then back to the XML Web service client, regardless of an exception thrown during execution of the XML Web service method.

public class MyHeader : SoapHeader {
    public string MyValue;
}

public class MyWebService {

    public MyHeader myHeader;

    [WebMethod]
    [SoapHeader("myHeader", 
                Direction=SoapHeaderDirection.InOut | SoapHeaderDirection.Fault)]
    public void MySoapHeaderReceivingMethod() {

        // Set myHeader.MyValue to some value.

    }
}
public __gc class MyHeader : public SoapHeader {
public:
    String* MyValue;
};

public __gc class MyWebService {

public:
    MyHeader* myHeader;

    [WebMethod]
    [SoapHeader(S"myHeader", 
                Direction=SoapHeaderDirection::InOut | SoapHeaderDirection::Fault)]
    void MySoapHeaderReceivingMethod() {

        // Set myHeader->MyValue to some value.

    }
};

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 3.5, 2.0, 1.0
Show: