SoapHeaderとは? わかりやすく解説

SoapHeader クラス

派生クラスオーバーライドされると、SOAP ヘッダー内容表します

名前空間: System.Web.Services.Protocols
アセンブリ: System.Web.Services (system.web.services.dll 内)
構文構文

Public MustInherit Class
 SoapHeader
public abstract class SoapHeader
public abstract class SoapHeader
解説解説

SOAP ヘッダー使用すると、データXML Web サービス メソッド基本機能直接関連してない場合は、データWeb サービス メソッド渡したり、Web サービス メソッドからデータ返すことができます。たとえば、XML Web サービスに、それぞれカスタム認証方式を必要とする XML Web サービス メソッド格納されている場合あります。この場合は、カスタム認証方式についてパラメータを各 XML Web サービス メソッド追加する代わりにSoapHeader派生クラス参照する SoapHeaderAttribute をそれぞれの XML Web サービス メソッド適用できますSoapHeader派生クラス実装により、カスタム認証方式処理されます。この方法では、XML Web サービス メソッドメソッド固有の機能だけを実装し、SOAP ヘッダー使用して機能追加します

SOAP ヘッダー受信し処理する基本手順の概要次の一覧に示します

  1. SOAP ヘッダー渡されデータを表す SoapHeader派生クラス作成します

  2. XML Web サービスまたは XML Web サービス クライアント プロキシ クラス実装するクラスに、最初の手順で作成した型のメンバ追加します

  3. 2 番の手順で作成したメンバを MemberName プロパティ指定してSoapHeaderAttributeXML Web サービス メソッドまたはプロキシ クラス内の対応するメソッド適用します。

  4. XML Web サービス メソッドまたは XML Web サービス クライアント コード内で、MemberName プロパティアクセスし、SOAP ヘッダー送信されデータ処理します

使用例使用例

MyWebService XML Web サービスMyHeader SOAP ヘッダー定義しMyWebMethod XML Web サービス メソッドへの呼び出しと共に送信されるようにする例を次に示しますまた、MyWebMethodMyHeader SOAP ヘッダー以外のすべての SOAP ヘッダー受信します

<%@ 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 theHeader As MyHeader
    ' Receive all SOAP headers besides the MyHeader SOAP header.
    Public unknownHeaders() As SoapUnknownHeader
    

    'Receive any SOAP headers other than MyHeader.    
    <WebMethod, _
     SoapHeader("theHeader", Direction := SoapHeaderDirection.InOut),
 _
     SoapHeader("unknownHeaders")> _
    Public Function MyWebMethod() As
 String
                
        Dim header As SoapUnknownHeader
        For Each header In
 unknownHeaders
            ' Perform some processing on the header.
            If header.Element.Name = "MyKnownHeader"
 Then
                header.DidUnderstand = True
            Else
                ' For those headers that cannot be
                ' processed, set the DidUnderstand propert to false.
                header.DidUnderstand = False
            End If
        Next header
        Return "Hello"
    End Function
    
End Class

<%@ 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",Required=false)]

    public string MyWebMethod() {

       foreach (SoapUnknownHeader header in
 unknownHeaders) {
           // Perform some processing on the header.
       if (header.Element.Name == "MyKnownHeader")
               header.DidUnderstand = true;
       else
                // For those headers that cannot be  
                // processed, set the DidUnderstand property to false.
                header.DidUnderstand = false;
       }
       return "Hello";
    }
}

継承階層継承階層
System.Object
  System.Web.Services.Protocols.SoapHeader
     System.Web.Services.Protocols.SoapUnknownHeader
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
SoapHeader メンバ
System.Web.Services.Protocols 名前空間
SoapUnknownHeader
SoapHeaderException
SoapHeaderAttribute
SoapHeaderDirection

SoapHeader コンストラクタ


SoapHeader プロパティ


パブリック プロパティパブリック プロパティ

  名前 説明
パブリック プロパティ Role SOAP ヘッダー受信者を取得または設定します
参照参照

関連項目

SoapHeader クラス
System.Web.Services.Protocols 名前空間
SoapUnknownHeader
SoapHeaderException
SoapHeaderAttribute
SoapHeaderDirection

SoapHeader メソッド


SoapHeader メンバ

派生クラスオーバーライドされると、SOAP ヘッダー内容表します

SoapHeader データ型公開されるメンバを以下の表に示します


プロテクト コンストラクタプロテクト コンストラクタ
  名前 説明
プロテクト メソッド SoapHeader SoapHeader クラス新しインスタンス初期化します。
パブリック プロパティパブリック プロパティ
  名前 説明
パブリック プロパティ Role SOAP ヘッダー受信者を取得または設定します
パブリック メソッドパブリック メソッド
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

SoapHeader クラス
System.Web.Services.Protocols 名前空間
SoapUnknownHeader
SoapHeaderException
SoapHeaderAttribute
SoapHeaderDirection



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「SoapHeader」の関連用語

SoapHeaderのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



SoapHeaderのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS