SoapUnknownHeader 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
表示從 SOAP 標頭接收的資料,該資料無法為收件者 XML Web Service 或 XML Web Service 用戶端所辨識。 此類別無法獲得繼承。
public ref class SoapUnknownHeader sealed : System::Web::Services::Protocols::SoapHeader
public sealed class SoapUnknownHeader : System.Web.Services.Protocols.SoapHeader
type SoapUnknownHeader = class
inherit SoapHeader
Public NotInheritable Class SoapUnknownHeader
Inherits SoapHeader
- 繼承
範例
MyWebService
XML Web 服務會接受並處理 MyHeader
與 XML Web 服務方法呼叫一起傳送的 MyWebMethod
SOAP 標頭。 此外, MyWebMethod
接收 SOAP 標頭以外的 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")]
public string MyWebMethod() {
string unknownHeaderAttributes = String.Empty;
// Set myHeader.MyValue to some value.
foreach (SoapUnknownHeader header in unknownHeaders) {
// Perform some processing on the header.
foreach (XmlAttribute attribute in header.Element.Attributes) {
unknownHeaderAttributes = unknownHeaderAttributes + attribute.Name + ":" + attribute.Value + ";";
}
// For those headers that cannot be
// processed, set the DidUnderstand property to false.
header.DidUnderstand = false;
}
return unknownHeaderAttributes;
}
}
<%@ 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 myHeader As MyHeader
' Receive all SOAP headers besides the MyHeader SOAP header.
Public unknownHeaders() As SoapUnknownHeader
'Receive any SOAP headers other than MyHeader.
<WebMethod, _
SoapHeader("myHeader", Direction := SoapHeaderDirection.InOut), _
SoapHeader("unknownHeaders")> _
Public Function MyWebMethod() As String
Dim unknownHeaderAttributes As String = String.Empty
' Set myHeader.MyValue to some value.
Dim header As SoapUnknownHeader
For Each header In unknownHeaders
' Perform some processing on the header.
Dim attribute As XmlAttribute
For Each attribute In header.Element.Attributes
unknownHeaderAttributes &= attribute.Name & ":" & _
attribute.Value & ";"
Next attribute
' For those headers that cannot be
' processed, set the DidUnderstand property to false.
header.DidUnderstand = False
Next header
Return unknownHeaderAttributes
End Function
End Class
備註
SOAP 用戶端可能會叫用 XML Web 服務,其資料超出 SOAP 標頭格式的必要參數。 使用 ASP.NET 或 XML Web 服務用戶端所建立的 XML Web 服務,可以檢視 XML Web 服務在撰寫 XML Web 服務時所不知道的任何 SOAP 標頭,方法是將 的 屬性套用 SoapHeaderAttribute 為 、 SoapUnknownHeaderSoapHeader 陣列或 的陣列 SoapUnknownHeader 。 SoapHeaderMemberName 指定 Type 的 SoapUnknownHeader ,可讓 XML Web 服務以 的形式 XmlElement 檢視 SOAP 標頭的內容。
建構函式
SoapUnknownHeader() |
初始化 SoapUnknownHeader 類別的新執行個體。 |
屬性
Actor |
取得或設定 SOAP 標頭的收件者。 (繼承來源 SoapHeader) |
DidUnderstand |
取得或設定值,指出 XML Web Service 方法是否已適當地處理 SOAP 標頭。 (繼承來源 SoapHeader) |
Element |
取得或設定 SOAP 要求或回應的 XML 標頭項目。 |
EncodedMustUnderstand |
與 SOAP 通訊協定 1.1 版通訊時,取得或設定 SOAP 標頭的 |
EncodedMustUnderstand12 |
與 SOAP 通訊協定 1.2 版通訊時,取得或設定 SOAP 標頭的 |
EncodedRelay |
取得或設定 SOAP 1.2 標頭的轉送屬性。 (繼承來源 SoapHeader) |
MustUnderstand |
取得或設定值,指出是否必須辨認 SoapHeader。 (繼承來源 SoapHeader) |
Relay |
取得或設定值,指出如果目前節點無法辨認標頭,是否會將 SOAP 標頭轉送至下一個 SOAP 節點。 (繼承來源 SoapHeader) |
Role |
取得或設定 SOAP 標頭的收件者。 (繼承來源 SoapHeader) |
方法
Equals(Object) |
判斷指定的物件是否等於目前的物件。 (繼承來源 Object) |
GetHashCode() |
做為預設雜湊函式。 (繼承來源 Object) |
GetType() |
取得目前執行個體的 Type。 (繼承來源 Object) |
MemberwiseClone() |
建立目前 Object 的淺層複製。 (繼承來源 Object) |
ToString() |
傳回代表目前物件的字串。 (繼承來源 Object) |