SoapUnknownHeader 類別

定義

表示從 SOAP 標頭接收的資料,該資料無法為收件者 XML Web Service 或 XML Web Service 用戶端所辨識。 此類別無法獲得繼承。

public ref class SoapUnknownHeader sealed : System::Web::Services::Protocols::SoapHeader
public sealed class SoapUnknownHeader : System.Web.Services.Protocols.SoapHeader
type SoapUnknownHeader = class
    inherit SoapHeader
Public NotInheritable Class SoapUnknownHeader
Inherits SoapHeader
繼承
SoapUnknownHeader

範例

MyWebServiceXML Web 服務會接受並處理 MyHeader 與 XML Web 服務方法呼叫一起傳送的 MyWebMethod SOAP 標頭。 此外, MyWebMethod 接收 SOAP 標頭以外的 MyHeader 任何 SOAP 標頭。

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

// Define a SOAP header by deriving from the SoapHeader base class.

public class MyHeader : SoapHeader {
    public string MyValue;
}

public class MyWebService {

    public MyHeader myHeader;
    // Receive all SOAP headers besides the MyHeader SOAP header.
    public SoapUnknownHeader[] unknownHeaders;
 
    [WebMethod]
    [SoapHeader("myHeader", Direction=SoapHeaderDirection.InOut)]

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

    public string MyWebMethod() {

    string unknownHeaderAttributes = String.Empty;

        // Set myHeader.MyValue to some value.
         
       foreach (SoapUnknownHeader header in unknownHeaders) {
           // Perform some processing on the header.
           foreach (XmlAttribute attribute in header.Element.Attributes) {
              unknownHeaderAttributes = unknownHeaderAttributes + attribute.Name + ":" + attribute.Value + ";";            
           }
           // For those headers that cannot be 
           // processed, set the DidUnderstand property to false.
           header.DidUnderstand = false;
       }
       return unknownHeaderAttributes;
    }
}
<%@ WebService Language="VB" Class="MyWebService"%>
Imports System.Web.Services
Imports System.Web.Services.Protocols
Imports System.Xml
Imports System

' Define a SOAP header by deriving from the SoapHeader base class.
Public Class MyHeader
    Inherits SoapHeader
    Public MyValue As String
End Class

Public Class MyWebService
    
    Public myHeader As MyHeader
    
    ' Receive all SOAP headers besides the MyHeader SOAP header.
    Public unknownHeaders() As SoapUnknownHeader    

    'Receive any SOAP headers other than MyHeader.
    <WebMethod, _
    SoapHeader("myHeader", Direction := SoapHeaderDirection.InOut), _
    SoapHeader("unknownHeaders")> _
    Public Function MyWebMethod() As String
        Dim unknownHeaderAttributes As String = String.Empty
        
        ' Set myHeader.MyValue to some value.
        Dim header As SoapUnknownHeader
        For Each header In  unknownHeaders
            ' Perform some processing on the header.
            Dim attribute As XmlAttribute
            For Each attribute In header.Element.Attributes
                unknownHeaderAttributes &= attribute.Name & ":" & _
                    attribute.Value & ";"
            Next attribute
            ' For those headers that cannot be 
            ' processed, set the DidUnderstand property to false.
            header.DidUnderstand = False
        Next header
        
        Return unknownHeaderAttributes
        
    End Function
End Class

備註

SOAP 用戶端可能會叫用 XML Web 服務,其資料超出 SOAP 標頭格式的必要參數。 使用 ASP.NET 或 XML Web 服務用戶端所建立的 XML Web 服務,可以檢視 XML Web 服務在撰寫 XML Web 服務時所不知道的任何 SOAP 標頭,方法是將 的 屬性套用 SoapHeaderAttribute 為 、 SoapUnknownHeaderSoapHeader 陣列或 的陣列 SoapUnknownHeaderSoapHeaderMemberName 指定 TypeSoapUnknownHeader ,可讓 XML Web 服務以 的形式 XmlElement 檢視 SOAP 標頭的內容。

建構函式

SoapUnknownHeader()

初始化 SoapUnknownHeader 類別的新執行個體。

屬性

Actor

取得或設定 SOAP 標頭的收件者。

(繼承來源 SoapHeader)
DidUnderstand

取得或設定值,指出 XML Web Service 方法是否已適當地處理 SOAP 標頭。

(繼承來源 SoapHeader)
Element

取得或設定 SOAP 要求或回應的 XML 標頭項目。

EncodedMustUnderstand

與 SOAP 通訊協定 1.1 版通訊時,取得或設定 SOAP 標頭的 mustUnderstand XML 屬性值。

(繼承來源 SoapHeader)
EncodedMustUnderstand12

與 SOAP 通訊協定 1.2 版通訊時,取得或設定 SOAP 標頭的 mustUnderstand XML 屬性值。

(繼承來源 SoapHeader)
EncodedRelay

取得或設定 SOAP 1.2 標頭的轉送屬性。

(繼承來源 SoapHeader)
MustUnderstand

取得或設定值,指出是否必須辨認 SoapHeader

(繼承來源 SoapHeader)
Relay

取得或設定值,指出如果目前節點無法辨認標頭,是否會將 SOAP 標頭轉送至下一個 SOAP 節點。

(繼承來源 SoapHeader)
Role

取得或設定 SOAP 標頭的收件者。

(繼承來源 SoapHeader)

方法

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
ToString()

傳回代表目前物件的字串。

(繼承來源 Object)

適用於

另請參閱