Bagikan melalui


SoapHeader Kelas

Definisi

Saat ditimpa di kelas turunan, mewakili konten header SOAP.

public ref class SoapHeader abstract
public abstract class SoapHeader
type SoapHeader = class
Public MustInherit Class SoapHeader
Warisan
SoapHeader
Turunan

Contoh

Layanan Web XML berikut MyWebService menentukan MyHeader header SOAP dan mengharuskannya dikirim dengan panggilan apa pun ke MyWebMethod metode layanan Web XML. Selain itu, MyWebMethod menerima header SOAP selain MyHeader header 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

Keterangan

Header SOAP menawarkan metode untuk meneruskan data ke dan dari metode layanan Web XML jika data tidak terkait langsung dengan fungsionalitas utama metode layanan Web XML. Misalnya, layanan Web XML mungkin berisi beberapa metode layanan Web XML yang masing-masing memerlukan skema autentikasi kustom. Alih-alih menambahkan parameter ke setiap metode layanan Web XML untuk skema autentikasi kustom, SoapHeaderAttribute, yang mengacu pada kelas yang berasal dari SoapHeader, dapat diterapkan ke setiap metode layanan Web XML. Implementasi untuk kelas yang berasal dari SoapHeader menangani skema autentikasi kustom. Dengan cara ini, metode layanan Web XML hanya mengimplementasikan fungsionalitas khusus untuk itu dan menambahkan fungsionalitas tambahan menggunakan header SOAP.

Daftar berikut menguraikan langkah-langkah dasar untuk menerima dan memproses header SOAP:

  1. Buat kelas yang berasal dari SoapHeader mewakili data yang diteruskan ke header SOAP.

  2. Tambahkan anggota ke kelas yang menerapkan layanan Web XML atau kelas proksi klien layanan Web XML, dari jenis yang dibuat pada langkah pertama.

  3. SoapHeaderAttribute Terapkan ke metode layanan Web XML atau metode yang sesuai di kelas proksi, menentukan anggota yang dibuat di langkah kedua di MemberName properti .

  4. Dalam metode layanan Web XML atau kode klien layanan Web XML, akses MemberName properti untuk memproses data yang dikirim di header SOAP.

Konstruktor

Nama Deskripsi
SoapHeader()

Menginisialisasi instans baru dari kelas SoapHeader.

Properti

Nama Deskripsi
Actor

Mendapatkan atau mengatur penerima header SOAP.

DidUnderstand

Mendapatkan atau menetapkan nilai yang menunjukkan apakah metode layanan Web XML memproses header SOAP dengan benar.

EncodedMustUnderstand

Mendapatkan atau mengatur nilai mustUnderstand atribut XML untuk header SOAP saat berkomunikasi dengan protokol SOAP versi 1.1.

EncodedMustUnderstand12

Mendapatkan atau mengatur nilai mustUnderstand atribut XML untuk header SOAP saat berkomunikasi dengan protokol SOAP versi 1.2.

EncodedRelay

Mendapatkan atau mengatur atribut relai header SOAP 1.2.

MustUnderstand

Mendapatkan atau menetapkan nilai yang menunjukkan apakah SoapHeader harus dipahami.

Relay

Mendapatkan atau menetapkan nilai yang menunjukkan apakah header SOAP akan disampaikan ke simpul SOAP berikutnya jika simpul saat ini tidak memahami header.

Role

Mendapatkan atau mengatur penerima header SOAP.

Metode

Nama Deskripsi
Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()

Mendapatkan Type instans saat ini.

(Diperoleh dari Object)
MemberwiseClone()

Membuat salinan dangkal dari Objectsaat ini.

(Diperoleh dari Object)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Berlaku untuk

Lihat juga