Aracılığıyla paylaş


SoapHeader Sınıf

Tanım

Türetilmiş bir sınıfta geçersiz kılındığında, SOAP üst bilgisinin içeriğini temsil eder.

public ref class SoapHeader abstract
public abstract class SoapHeader
type SoapHeader = class
Public MustInherit Class SoapHeader
Devralma
SoapHeader
Türetilmiş

Örnekler

Aşağıdaki MyWebService XML Web hizmeti SOAP üst bilgisini tanımlar MyHeader ve XML Web hizmeti yöntemine yapılan tüm çağrılarla gönderilmesini MyWebMethod gerektirir. Ayrıca, MyWebMethod SOAP üst bilgisi dışında MyHeader herhangi bir SOAP üst bilgisi alır.

<%@ 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

Açıklamalar

SOAP üst bilgileri, veriler XML Web hizmeti yönteminin birincil işlevselliğiyle doğrudan ilgili değilse, XML Web hizmeti yöntemine veri geçirmek için bir yöntem sunar. Örneğin, bir XML Web hizmeti, her birinin özel bir kimlik doğrulama şeması gerektiren birkaç XML Web hizmeti yöntemi içerebilir. Özel kimlik doğrulama düzeni için her XML Web hizmeti yöntemine parametre eklemek yerine, öğesinden SoapHeadertüretilen bir sınıfa başvuran bir SoapHeaderAttribute, her XML Web hizmeti yöntemine uygulanabilir. öğesinden SoapHeader türetilen sınıfın uygulaması özel kimlik doğrulama düzenini işler. Bu şekilde, XML Web hizmeti yöntemi yalnızca ona özgü işlevselliği uygular ve SOAP üst bilgisi kullanarak ek işlevler ekler.

Aşağıdaki listede BIR SOAP üst bilgisini alma ve işlemeye yönelik temel adımlar özetlenmiştir:

  1. SOAP üst bilgisine geçirilen verileri temsil eden öğesinden SoapHeader türetilen bir sınıf oluşturun.

  2. İlk adımda oluşturulan türün XML Web hizmetini veya XML Web hizmeti istemci proxy sınıfını uygulayan sınıfına bir üye ekleyin.

  3. SoapHeaderAttribute XML Web hizmeti yöntemine veya proxy sınıfındaki karşılık gelen yönteme bir uygulayın ve özelliğin ikinci adımında oluşturulan üyeyi MemberName belirtin.

  4. XML Web hizmeti yöntemi veya XML Web hizmeti istemci kodu içinde, SOAP üst bilgisinde gönderilen verileri işlemek için özelliğine erişin MemberName .

Oluşturucular

Name Description
SoapHeader()

SoapHeader sınıfının yeni bir örneğini başlatır.

Özellikler

Name Description
Actor

SOAP üst bilgisinin alıcısını alır veya ayarlar.

DidUnderstand

XML Web hizmeti yönteminin SOAP üst bilgisini düzgün işleyip işlemediğini belirten bir değer alır veya ayarlar.

EncodedMustUnderstand

SOAP protokolü sürüm 1.1 ile iletişim kurarken SOAP üst bilgisi için XML özniteliğinin değerini mustUnderstand alır veya ayarlar.

EncodedMustUnderstand12

SOAP protokolü sürüm 1.2 ile iletişim kurarken SOAP üst bilgisi için XML özniteliğinin değerini mustUnderstand alır veya ayarlar.

EncodedRelay

SOAP 1.2 üst bilgisinin geçiş özniteliğini alır veya ayarlar.

MustUnderstand

öğesinin anlaşılması gerekip gerekmediğini SoapHeader belirten bir değer alır veya ayarlar.

Relay

Geçerli düğüm üst bilgiyi anlamıyorsa SOAP üst bilgisinin sonraki SOAP düğümüne aktarılıp aktarılmayacağını belirten bir değer alır veya ayarlar.

Role

SOAP üst bilgisinin alıcısını alır veya ayarlar.

Yöntemler

Name Description
Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)

Şunlara uygulanır

Ayrıca bkz.