次の方法で共有


SoapUnknownHeader クラス

定義

SOAP ヘッダーから受信したデータのうち、受信側の XML Web サービスまたは XML Web サービス クライアントが認識できなかったデータを表します。 このクラスは継承できません。

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

XML Web サービスは MyWebService 、XML Web サービス メソッドへの MyHeader 呼び出しで送信された SOAP ヘッダーを MyWebMethod 受け入れて処理します。 さらに、 MyWebMethod SOAP ヘッダー以外のすべての SOAP ヘッダーを MyHeader 受信します。

<%@ 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 クライアントは、SOAP ヘッダーの形式で必要なパラメーターを超える追加データを使用して XML Web サービスを呼び出す場合があります。 ASP.NET または XML Web サービス クライアントを使用して作成された XML Web サービスは、XML Web サービスの配列または XML Web サービス メソッドの配列SoapHeaderSoapUnknownHeaderSoapHeaderのプロパティを使用して適用SoapHeaderAttributeMemberNameすることで、XML Web サービスが書き込まれた時点で知らなかったすべての SOAP ヘッダーをSoapUnknownHeader表示できます。 Type SoapUnknownHeaderを指定すると、XML Web サービスは SOAP ヘッダーの内容を次のXmlElement形式で表示できます。

コンストラクター

SoapUnknownHeader()

SoapUnknownHeader クラスの新しいインスタンスを初期化します。

プロパティ

Actor

SOAP ヘッダーの受信者を取得または設定します。

(継承元 SoapHeader)
DidUnderstand

XML Web サービス メソッドで SOAP ヘッダーを適切に処理したかどうかを示す値を取得または設定します。

(継承元 SoapHeader)
Element

SOAP 要求または SOAP 応答の XML ヘッダー要素を取得または設定します。

EncodedMustUnderstand

SOAP Version 1.1 のプロトコルと通信するときに SOAP ヘッダーの mustUnderstand XML 属性の値を取得または設定します。

(継承元 SoapHeader)
EncodedMustUnderstand12

SOAP Version 1.2 のプロトコルと通信するときに SOAP ヘッダーの mustUnderstand XML 属性の値を取得または設定します。

(継承元 SoapHeader)
EncodedRelay

SOAP 1.2 ヘッダーの relay 属性を取得または設定します。

(継承元 SoapHeader)
MustUnderstand

SoapHeader を認識する必要があるかどうかを示す値を取得または設定します。

(継承元 SoapHeader)
Relay

現在のノードがヘッダーを認識しない場合に、SOAP ヘッダーを次の SOAP ノードに渡すかどうかを示す値を取得または設定します。

(継承元 SoapHeader)
Role

SOAP ヘッダーの受信者を取得または設定します。

(継承元 SoapHeader)

メソッド

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)

適用対象

こちらもご覧ください