Edit

Share via


SoapHeader.MustUnderstand Property

Definition

Gets or sets a value indicating whether the SoapHeader must be understood.

public bool MustUnderstand { get; set; }

Property Value

true if the XML Web service must properly interpret and process the SoapHeader; otherwise, false. The default is false.

Examples

The following XML Web service client defines a custom SOAP header of type MyHeader, sets the MustUnderstand property to true, and invokes the MyWebMethod XML Web service method. If the XML Web service method does not set the DidUnderstand property of the MyHeader SOAP header to true, a SoapHeaderException is thrown.

using System;

public class Sample {

    public static void Main() {
        MyWebService ws = new MyWebService();

        try {
            MyHeader customHeader = new MyHeader();
            customHeader.MyValue = "Header Value for MyValue";
            customHeader.MustUnderstand = true;
            ws.myHeader = customHeader;

        int results = ws.MyWebMethod(3,5);
        }
        catch (Exception e) {
            Console.WriteLine ("Exception: {0}", e.ToString());
        }
    }
}

Remarks

When an XML Web service client adds a SOAP header to an XML Web service method call with the MustUnderstand property set to true, the XML Web service method must set the DidUnderstand property to true; otherwise, a SoapHeaderException is thrown back to the XML Web service client by ASP.NET.

Although both the EncodedMustUnderstand and MustUnderstand properties can be used to set the value of the mustUnderstand attribute within the SOAP header, the MustUnderstand property allows you to set the attribute using a Boolean value.

For details on adding SOAP headers to clients, see Using SOAP Headers.

Applies to

Product Versions
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

See also