SoapHttpClientProtocol Klasse

Definition

Gibt den Klassenclient an, von dem Proxys bei Verwendung von SOAP abgeleitet werden.

public ref class SoapHttpClientProtocol : System::Web::Services::Protocols::HttpWebClientProtocol
public class SoapHttpClientProtocol : System.Web.Services.Protocols.HttpWebClientProtocol
[System.Runtime.InteropServices.ComVisible(true)]
public class SoapHttpClientProtocol : System.Web.Services.Protocols.HttpWebClientProtocol
type SoapHttpClientProtocol = class
    inherit HttpWebClientProtocol
[<System.Runtime.InteropServices.ComVisible(true)>]
type SoapHttpClientProtocol = class
    inherit HttpWebClientProtocol
Public Class SoapHttpClientProtocol
Inherits HttpWebClientProtocol
Vererbung
Attribute

Beispiele

Das folgende Codebeispiel ist eine Proxyklasse, die von Wsdl.exe für den Math XML-Webdienst generiert wird. Die Proxyklasse wird von SoapHttpClientProtocolder abstrakten WebClientProtocol Klasse abgeleitet.

#using <System.Web.Services.dll>
#using <System.Xml.dll>
#using <System.dll>

using namespace System::Diagnostics;
using namespace System::Xml::Serialization;
using namespace System;
using namespace System::Web::Services::Protocols;
using namespace System::Web::Services;

namespace MyMath
{

   [System::Web::Services::WebServiceBindingAttribute(Name="MyMathSoap",Namespace="http://www.contoso.com/")]
   public ref class MyMath: public System::Web::Services::Protocols::SoapHttpClientProtocol
   {
   public:

      [System::Diagnostics::DebuggerStepThroughAttribute]
      MyMath()
      {
         this->Url = "http://www.contoso.com/math.asmx";
      }


      [System::Diagnostics::DebuggerStepThroughAttribute]
      [System::Web::Services::Protocols::SoapDocumentMethodAttribute("http://www.contoso.com/Add",
      RequestNamespace="http://www.contoso.com/",ResponseNamespace="http://www.contoso.com/",
      Use=System::Web::Services::Description::SoapBindingUse::Literal,
      ParameterStyle=System::Web::Services::Protocols::SoapParameterStyle::Wrapped)]
      int Add( int num1, int num2 )
      {
         array<Object^>^temp0 = {num1,num2};
         array<Object^>^results = this->Invoke( "Add", temp0 );
         return  *dynamic_cast<int^>(results[ 0 ]);
      }


      [System::Diagnostics::DebuggerStepThroughAttribute]
      System::IAsyncResult^ BeginAdd( int num1, int num2, System::AsyncCallback^ callback, Object^ asyncState )
      {
         array<Object^>^temp1 = {num1,num2};
         return this->BeginInvoke( "Add", temp1, callback, asyncState );
      }


      [System::Diagnostics::DebuggerStepThroughAttribute]
      int EndAdd( System::IAsyncResult^ asyncResult )
      {
         array<Object^>^results = this->EndInvoke( asyncResult );
         return  *dynamic_cast<int^>(results[ 0 ]);
      }

   };

}


namespace MyMath {
    using System.Diagnostics;
    using System.Xml.Serialization;
    using System;
    using System.Web.Services.Protocols;
    using System.Web.Services;

    [System.Web.Services.WebServiceBindingAttribute(Name="MyMathSoap", Namespace="http://www.contoso.com/")]
    public class MyMath : System.Web.Services.Protocols.SoapHttpClientProtocol {

        [System.Diagnostics.DebuggerStepThroughAttribute()]
        public MyMath() {
            this.Url = "http://www.contoso.com/math.asmx";
        }

        [System.Diagnostics.DebuggerStepThroughAttribute()]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://www.contoso.com/Add", RequestNamespace="http://www.contoso.com/", ResponseNamespace="http://www.contoso.com/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public int Add(int num1, int num2) {
            object[] results = this.Invoke("Add", new object[] {num1,
                        num2});
            return ((int)(results[0]));
        }

        [System.Diagnostics.DebuggerStepThroughAttribute()]
        public System.IAsyncResult BeginAdd(int num1, int num2, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("Add", new object[] {num1,
                        num2}, callback, asyncState);
        }

        [System.Diagnostics.DebuggerStepThroughAttribute()]
        public int EndAdd(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((int)(results[0]));
        }
    }
}

Option Strict On
Option Explicit On

Imports System.Diagnostics
Imports System.Web.Services
Imports System.Web.Services.Protocols
Imports System.Xml.Serialization

Namespace MyMath
    
    <System.Web.Services.WebServiceBindingAttribute(Name:="MyMathSoap", [Namespace]:="http://www.contoso.com/")>  _
    Public Class MyMath
        Inherits System.Web.Services.Protocols.SoapHttpClientProtocol
        
        <System.Diagnostics.DebuggerStepThroughAttribute()>  _
        Public Sub New()
            MyBase.New
            Me.Url = "http://www.contoso.com/math.asmx"
        End Sub
        
        <System.Diagnostics.DebuggerStepThroughAttribute(),  _
         System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://www.contoso.com/Add", RequestNamespace:="http://www.contoso.com/", ResponseNamespace:="http://www.contoso.com/", Use:=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle:=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)>  _
        Public Function Add(ByVal num1 As Integer, ByVal num2 As Integer) As Integer
            Dim results() As Object = Me.Invoke("Add", New Object() {num1, num2})
            Return CType(results(0),Integer)
        End Function
        
        <System.Diagnostics.DebuggerStepThroughAttribute()>  _
        Public Function BeginAdd(ByVal num1 As Integer, ByVal num2 As Integer, ByVal callback As System.AsyncCallback, ByVal asyncState As Object) As System.IAsyncResult
            Return Me.BeginInvoke("Add", New Object() {num1, num2}, callback, asyncState)
        End Function
        
        <System.Diagnostics.DebuggerStepThroughAttribute()>  _
        Public Function EndAdd(ByVal asyncResult As System.IAsyncResult) As Integer
            Dim results() As Object = Me.EndInvoke(asyncResult)
            Return CType(results(0),Integer)
        End Function
    End Class
End Namespace

Das folgende Codebeispiel ist der Math XML-Webdienst, aus dem die vorherige Proxyklasse generiert wurde.

Important

In diesem Beispiel handelt es sich um ein Textfeld, das Benutzereingaben akzeptiert, bei denen es sich um eine potenzielle Sicherheitsrisiken handelt. Standardmäßig überprüfen ASP.NET Webseiten, dass die Benutzereingabe keine Skript- oder HTML-Elemente enthält. Weitere Informationen finden Sie unter Script Exploits Overview.

<%@ WebService Language="C#" Class="MyMath"%>
 using System.Web.Services;
 using System;
 
 [WebService(Namespace="http://www.contoso.com/")] 
 public class MyMath {
    
    [ WebMethod ]
    public int Add(int num1, int num2) {
        return num1+num2;
    }
 }
<%@ WebService Language="VB" Class="MyMath"%>
Imports System.Web.Services
Imports System

<WebService(Namespace:="http://www.contoso.com/")> _
Public Class MyMath
    <WebMethod()> _
    Public Function Add(num1 As Integer, num2 As Integer) As Integer
        Return num1 + num2
    End Function 'Add
End Class 'Math

Hinweise

Wenn Sie einen XML-Webdienstclient erstellen, muss eine Proxyklasse, die indirekt oder direkt von WebClientProtocol dem XML-Webdienst abgeleitet wird, erstellt werden. Wenn der XML-Webdienstclient mit SOAP aufruft, muss die Proxyklasse von SoapHttpClientProtocolder abgeleitet werden HttpWebClientProtocol. HttpWebClientProtocol, wiederum abgeleitet von WebClientProtocol.

Um mit einem XML-Webdienst zu kommunizieren, erstellen Sie eine Proxyklasse, die indirekt oder direkt vom WebClientProtocol XML-Webdienst abgeleitet wird, den Sie aufrufen möchten. Anstatt die Proxyklasse manuell zu erstellen, verwenden Sie das Web Services Description Language-Tool (Wsdl.exe), um eine Proxyklasse für die Dienstbeschreibung eines bestimmten XML-Webdiensts zu erstellen. Wenn eine Proxyklasse für das SOAP-Protokoll generiert wird, werden synchrone Aufrufe von XML-Webdienstmethoden über die Invoke Methode ausgeführt, während asynchrone Aufrufe mithilfe der BeginInvoke Methode und der EndInvoke Methode erfolgen.

Hinweise für Vererber

Wenn Sie diese Klasse außer Kraft setzen, können Sie Methoden in der abgeleiteten Klasse einführen, die spezifisch für einen bestimmten XML-Webdiensttyp sind. Die Methoden erfassen die Parameter und rufen die Basisklasse auf, um die Kommunikation mit dem XML-Webdienst zu erledigen. Wenn die eingeführten Methoden asynchron sind, rufen Sie die BeginInvoke(String, Object[], AsyncCallback, Object) Methode und die EndInvoke(IAsyncResult) Methode auf. Wenn die eingeführten Methoden synchron sind, rufen Sie die Invoke(String, Object[]) Methode auf. Der überschriebene Konstruktor legt die Eigenschaft in der Url Regel auf die URL der XML-Webdienstmethode fest.

Konstruktoren

Name Beschreibung
SoapHttpClientProtocol()

Initialisiert eine neue Instanz der SoapHttpClientProtocol-Klasse.

Eigenschaften

Name Beschreibung
AllowAutoRedirect

Ruft ab oder legt fest, ob der Client automatisch Serverumleitungen folgt.

(Geerbt von HttpWebClientProtocol)
CanRaiseEvents

Ruft einen Wert ab, der angibt, ob die Komponente ein Ereignis auslösen kann.

(Geerbt von Component)
ClientCertificates

Ruft die Sammlung von Clientzertifikaten ab.

(Geerbt von HttpWebClientProtocol)
ConnectionGroupName

Dient zum Abrufen oder Festlegen des Namens der Verbindungsgruppe für die Anforderung.

(Geerbt von WebClientProtocol)
Container

Ruft das, das IContainer die Component.

(Geerbt von Component)
CookieContainer

Ruft die Sammlung von Cookies ab oder legt sie fest.

(Geerbt von HttpWebClientProtocol)
Credentials

Ruft Sicherheitsanmeldeinformationen für die XML-Webdienstclientauthentifizierung ab oder legt diese fest.

(Geerbt von WebClientProtocol)
DesignMode

Ruft einen Wert ab, der angibt, ob sich der Component Entwurfsmodus derzeit befindet.

(Geerbt von Component)
EnableDecompression

Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob die Dekomprimierung für diese HttpWebClientProtocolOption aktiviert ist.

(Geerbt von HttpWebClientProtocol)
Events

Ruft die Liste der Ereignishandler ab, die an diese Componentangefügt sind.

(Geerbt von Component)
PreAuthenticate

Ruft ab oder legt fest, ob die Vorauthentifizierung aktiviert ist.

(Geerbt von WebClientProtocol)
Proxy

Dient zum Abrufen oder Festlegen von Proxyinformationen zum Erstellen einer XML-Webdienstanforderung über eine Firewall.

(Geerbt von HttpWebClientProtocol)
RequestEncoding

Wird Encoding verwendet, um die Clientanforderung an den XML-Webdienst zu senden.

(Geerbt von WebClientProtocol)
Site

Ruft den ISite von Component ab oder legt ihn fest.

(Geerbt von Component)
SoapVersion

Ruft die Version des SOAP-Protokolls ab, mit dem die SOAP-Anforderung an den XML-Webdienst gesendet wird, oder legt diese fest.

Timeout

Gibt an, wie lange ein XML-Webdienstclient auf die Antwort auf eine synchrone XML-Webdienstanforderung wartet (in Millisekunden).

(Geerbt von WebClientProtocol)
UnsafeAuthenticatedConnectionSharing

Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob die Verbindungsfreigabe aktiviert ist, wenn der Client die NTLM-Authentifizierung verwendet, um eine Verbindung mit dem Webserver herzustellen, der den XML-Webdienst hostt.

(Geerbt von HttpWebClientProtocol)
Url

Ruft die Basis-URL des XML-Webdiensts ab, den der Client anfordert, oder legt diese fest.

(Geerbt von WebClientProtocol)
UseDefaultCredentials

Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob die Credentials Eigenschaft auf den Wert der DefaultCredentials Eigenschaft festgelegt werden soll.

(Geerbt von WebClientProtocol)
UserAgent

Dient zum Abrufen oder Festlegen des Werts für den Benutzer-Agent-Header, der mit jeder Anforderung gesendet wird.

(Geerbt von HttpWebClientProtocol)

Methoden

Name Beschreibung
Abort()

Bricht eine Anforderung an eine XML-Webdienstmethode ab.

(Geerbt von WebClientProtocol)
BeginInvoke(String, Object[], AsyncCallback, Object)

Startet einen asynchronen Aufruf einer XML-Webdienstmethode mithilfe von SOAP.

CancelAsync(Object)

Bricht einen asynchronen Aufruf einer XML-Webdienstmethode ab, es sei denn, der Aufruf wurde bereits abgeschlossen.

(Geerbt von HttpWebClientProtocol)
CreateObjRef(Type)

Erstellt ein Objekt, das alle relevanten Informationen enthält, die zum Generieren eines Proxys erforderlich sind, der für die Kommunikation mit einem Remoteobjekt verwendet wird.

(Geerbt von MarshalByRefObject)
Discover()

Bindet dynamisch an einen XML-Webdienst, der im Ermittlungsdokument Urlunter .

Dispose()

Veröffentlicht alle ressourcen, die von der Component.

(Geerbt von Component)
Dispose(Boolean)

Gibt die nicht verwalteten Ressourcen frei, die von den Component verwalteten Ressourcen verwendet werden, und gibt optional die verwalteten Ressourcen frei.

(Geerbt von Component)
EndInvoke(IAsyncResult)

Beendet einen asynchronen Aufruf einer XML-Webdienstmethode mithilfe von SOAP.

Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetLifetimeService()

Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinie für diese Instanz steuert.

(Geerbt von MarshalByRefObject)
GetReaderForMessage(SoapClientMessage, Int32)

Gibt eine XmlReader initialisierte Eigenschaft Stream des SoapClientMessage Parameters zurück.

GetService(Type)

Gibt ein Objekt zurück, das einen Dienst darstellt, der von der Component oder dem zugehörigen ContainerDienst bereitgestellt wird.

(Geerbt von Component)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
GetWebRequest(Uri)

Erstellt eine WebRequest für die angegebene uri.

GetWebResponse(WebRequest, IAsyncResult)

Gibt eine Antwort von einer asynchronen Anforderung an eine XML-Webdienstmethode zurück.

(Geerbt von HttpWebClientProtocol)
GetWebResponse(WebRequest)

Gibt eine Antwort von einer synchronen Anforderung an eine XML-Webdienstmethode zurück.

(Geerbt von HttpWebClientProtocol)
GetWriterForMessage(SoapClientMessage, Int32)

Gibt eine XmlWriter initialisierte Eigenschaft Stream des SoapClientMessage Parameters zurück.

InitializeLifetimeService()

Ruft ein Lebensdauerdienstobjekt ab, um die Lebensdauerrichtlinie für diese Instanz zu steuern.

(Geerbt von MarshalByRefObject)
Invoke(String, Object[])

Ruft eine XML-Webdienstmethode synchron mithilfe von SOAP auf.

InvokeAsync(String, Object[], SendOrPostCallback, Object)

Ruft die angegebene Methode asynchron auf.

InvokeAsync(String, Object[], SendOrPostCallback)

Ruft die angegebene Methode asynchron auf.

MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
MemberwiseClone(Boolean)

Erstellt eine flache Kopie des aktuellen MarshalByRefObject Objekts.

(Geerbt von MarshalByRefObject)
ToString()

Gibt einen String mit dem Namen des Component, falls vorhanden, zurück. Diese Methode sollte nicht außer Kraft gesetzt werden.

(Geerbt von Component)

Ereignisse

Name Beschreibung
Disposed

Tritt auf, wenn die Komponente durch einen Aufruf der Dispose() Methode verworfen wird.

(Geerbt von Component)

Gilt für:

Threadsicherheit

Dieser Typ ist threadsicher.

Weitere Informationen