Sdílet prostřednictvím


SoapHeader Třída

Definice

Při přepsání v odvozené třídě představuje obsah hlavičky SOAP.

public ref class SoapHeader abstract
public abstract class SoapHeader
type SoapHeader = class
Public MustInherit Class SoapHeader
Dědičnost
SoapHeader
Odvozené

Příklady

Následující MyWebService webová služba XML definuje hlavičku MyHeader SOAP a vyžaduje, aby byla odeslána se všemi voláními MyWebMethod metody webové služby XML. Kromě toho MyWebMethod obdrží všechny hlavičky SOAP jiné než hlavičky 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",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";
    }
}
<%@ 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

Poznámky

Hlavičky SOAP nabízejí metodu předávání dat do a z metody webové služby XML, pokud data přímo nesouvisí s primární funkcí metody webové služby XML. Webová služba XML může například obsahovat několik metod webové služby XML, které vyžadují vlastní schéma ověřování. Místo přidání parametrů do každé metody webové služby XML pro vlastní schéma ověřování lze SoapHeaderAttributepoužít , odkazující na třídu odvozenou z SoapHeader, lze použít pro každou metodu webové služby XML. Implementace třídy odvozené z SoapHeader obslužného schématu vlastního ověřování. Tímto způsobem metoda webové služby XML implementuje pouze funkce specifické pro něj a přidává další funkce pomocí hlavičky SOAP.

Následující seznam popisuje základní kroky pro příjem a zpracování hlavičky SOAP:

  1. Vytvořte třídu, která je odvozena z SoapHeader reprezentace dat předávaných do hlavičky SOAP.

  2. Přidejte člena do třídy implementujte webovou službu XML nebo třídu proxy klienta webové služby XML typu vytvořeného v prvním kroku.

  3. SoapHeaderAttribute Použijte metodu webové služby XML nebo odpovídající metodu ve třídě proxy, která určuje člena vytvořeného v druhém kroku vlastnostiMemberName.

  4. V rámci metody webové služby XML nebo kódu klienta webové služby XML přejděte k MemberName vlastnosti pro zpracování dat odesílaných v hlavičce SOAP.

Konstruktory

SoapHeader()

Inicializuje novou instanci SoapHeader třídy.

Vlastnosti

Actor

Získá nebo nastaví příjemce hlavičky SOAP.

DidUnderstand

Získá nebo nastaví hodnotu určující, zda metoda webové služby XML správně zpracovala hlavičku SOAP.

EncodedMustUnderstand

Získá nebo nastaví hodnotu atributu mustUnderstand XML pro hlavičku SOAP při komunikaci s protokolem SOAP verze 1.1.

EncodedMustUnderstand12

Získá nebo nastaví hodnotu mustUnderstand atributu XML pro hlavičku SOAP při komunikaci s protokolem SOAP verze 1.2.

EncodedRelay

Získá nebo nastaví relé atribut hlavičky SOAP 1.2.

MustUnderstand

Získá nebo nastaví hodnotu určující, zda SoapHeader musí být srozumitelný.

Relay

Získá nebo nastaví hodnotu, která označuje, zda má být hlavička SOAP předána do dalšího uzlu SOAP, pokud aktuální uzel nerozumí záhlaví.

Role

Získá nebo nastaví příjemce hlavičky SOAP.

Metody

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetType()

Type Získá aktuální instanci.

(Zděděno od Object)
MemberwiseClone()

Vytvoří použádnou kopii aktuálního souboru Object.

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro

Viz také