SoapHeader Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Ha egy származtatott osztályban felül van bírálva, a SOAP-fejléc tartalmát jelöli.
public ref class SoapHeader abstract
public abstract class SoapHeader
type SoapHeader = class
Public MustInherit Class SoapHeader
- Öröklődés
-
SoapHeader
- Származtatott
Példák
A következő MyWebService XML-webszolgáltatás határozza meg a MyHeader SOAP fejlécet, és megköveteli, hogy az MyWebMethod XML Web Service metódushoz intézett hívásokkal együtt küldje el. Emellett MyWebMethod a SOAP fejlécen kívül MyHeader minden SOAP-fejlécet is megkap.
<%@ 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
Megjegyzések
A SOAP-fejlécek olyan módszert kínálnak az adatok XML-webszolgáltatás-metódusba való továbbítására, ha az adatok nem kapcsolódnak közvetlenül az XML-webszolgáltatás-metódus elsődleges funkcióihoz. Egy XML-webszolgáltatás például számos OLYAN XML-webszolgáltatás-metódust tartalmazhat, amelyek mindegyike egyéni hitelesítési sémát igényel. Ahelyett, hogy paramétereket ad az egyéni hitelesítési séma minden XML-webszolgáltatás-metódusához, az SoapHeaderAttributeegyes XML-webszolgáltatás-metódusokra egy , az abból származó SoapHeaderosztályra hivatkozó parancs alkalmazható. Az osztály implementációja az egyéni hitelesítési sémát SoapHeader kezeli. Ily módon az XML Web service metódus csak az adott funkciót implementálja, és egy SOAP-fejléc használatával további funkciókat ad hozzá.
Az alábbi lista a SOAP-fejlécek fogadásának és feldolgozásának alapvető lépéseit ismerteti:
Hozzon létre egy osztályt, amely a SOAP fejlécbe továbbított adatokból származik SoapHeader .
Adjon hozzá egy tagot az első lépésben létrehozott XML-webszolgáltatást vagy XML webszolgáltatás-ügyfélproxy-osztályt implementáló osztályhoz.
SoapHeaderAttribute Alkalmazza az XML webszolgáltatás metódusára vagy a proxyosztály megfelelő metódusára, és adja meg a tulajdonság második lépésében MemberName létrehozott tagot.
Az XML Web Service metóduson vagy az XML Web Service ügyfélkódon belül lépjen a MemberName tulajdonsághoz a SOAP fejlécben küldött adatok feldolgozásához.
Konstruktorok
| Név | Description |
|---|---|
| SoapHeader() |
Inicializálja a SoapHeader osztály új példányát. |
Tulajdonságok
| Név | Description |
|---|---|
| Actor |
Lekéri vagy beállítja a SOAP fejléc címzettjének nevét. |
| DidUnderstand |
Lekéri vagy beállít egy értéket, amely jelzi, hogy egy XML-webszolgáltatás-metódus megfelelően feldolgozott-e SOAP-fejlécet. |
| EncodedMustUnderstand |
A SOAP-protokoll 1.1-es verziójával folytatott kommunikáció során lekéri vagy beállítja a SOAP-fejléc XML-attribútumának értékét |
| EncodedMustUnderstand12 |
Lekéri vagy beállítja a |
| EncodedRelay |
Lekéri vagy beállítja a SOAP 1.2 fejléc relay attribútumát. |
| MustUnderstand |
Lekéri vagy beállít egy értéket, amely jelzi, hogy az SoapHeader értéket meg kell-e érteni. |
| Relay |
Lekéri vagy beállít egy értéket, amely jelzi, hogy a SOAP-fejlécet a következő SOAP-csomópontra kell-e továbbítani, ha az aktuális csomópont nem érti a fejlécet. |
| Role |
Lekéri vagy beállítja a SOAP fejléc címzettjének nevét. |
Metódusok
| Név | Description |
|---|---|
| Equals(Object) |
Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal. (Öröklődés forrása Object) |
| GetHashCode() |
Ez az alapértelmezett kivonatoló függvény. (Öröklődés forrása Object) |
| GetType() |
Lekéri az Type aktuális példányt. (Öröklődés forrása Object) |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| ToString() |
Az aktuális objektumot jelképező sztringet ad vissza. (Öröklődés forrása Object) |