Поделиться через


SoapUnknownHeader Класс

Определение

Представляет данные, полученные из заголовка SOAP, который не был понят получателем веб-службы XML или клиентом веб-службы XML. Этот класс не может быть унаследован.

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
Наследование
SoapUnknownHeader

Примеры

MyWebService Веб-служба XML принимает и обрабатывает MyHeader заголовок SOAP, отправленный с любыми вызовами MyWebMethod метода веб-службы XML. Кроме того, получает все заголовки SOAP, MyWebMethod отличные от заголовка 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 с дополнительными данными за пределами необходимых параметров в виде заголовка SOAP. Веб-служба XML, созданная с помощью ASP.NET или клиента веб-службы XML, может просматривать любые заголовки SOAP, о которые он не знал в то время, когда веб-служба XML была написана путем применения SoapHeaderAttribute свойства MemberName массива SoapHeaderSoapHeaderSoapUnknownHeader или массива SoapUnknownHeader к методу веб-службы XML. Указание типа TypeSoapUnknownHeader, позволяет веб-службе XML просматривать содержимое заголовка SOAP в виде.XmlElement

Конструкторы

Имя Описание
SoapUnknownHeader()

Инициализирует новый экземпляр класса SoapUnknownHeader.

Свойства

Имя Описание
Actor

Возвращает или задает получателя заголовка SOAP.

(Унаследовано от SoapHeader)
DidUnderstand

Возвращает или задает значение, указывающее, правильно ли метод веб-службы XML обработал заголовок SOAP.

(Унаследовано от SoapHeader)
Element

Возвращает или задает элемент заголовка XML для запроса или ответа SOAP.

EncodedMustUnderstand

Возвращает или задает значение XML-атрибута для заголовка mustUnderstand SOAP при взаимодействии с протоколом SOAP версии 1.1.

(Унаследовано от SoapHeader)
EncodedMustUnderstand12

Возвращает или задает значение XML-атрибута для заголовка mustUnderstand SOAP при взаимодействии с протоколом SOAP версии 1.2.

(Унаследовано от SoapHeader)
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)

Применяется к

См. также раздел