SoapUnknownHeader.Element プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
SOAP 要求または SOAP 応答の XML ヘッダー要素を取得または設定します。
public:
property System::Xml::XmlElement ^ Element { System::Xml::XmlElement ^ get(); void set(System::Xml::XmlElement ^ value); };
public System.Xml.XmlElement Element { get; set; }
member this.Element : System.Xml.XmlElement with get, set
Public Property Element As XmlElement
プロパティ値
SOAP ヘッダーの生の XML を表す XmlElement。
例
次 MyWebService
の XML Web サービスは、知っている SOAP ヘッダー以外の SOAP ヘッダーを含むすべての SOAP ヘッダーを MyHeader
受け取ります。 XML Web サービス メソッドは MyWebMethod
、最後に渡された不明な SOAP ヘッダーの XML 属性を文字列としてクライアントに返します。
<%@ 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
注釈
XML Web サービス メソッドが XML Web サービスの書き込み時に知らない SOAP ヘッダーを処理する場合は、SOAP ヘッダーの生 XML を表すクラスを処理 XmlElement できます。