SoapHttpClientProtocol Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Spécifie le client de classe dont dérivent les proxys lors de l’utilisation de SOAP.
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
- Héritage
- Attributs
Exemples
L’exemple de code suivant est une classe proxy générée par Wsdl.exe pour le Math service Web XML. La classe proxy dérive de SoapHttpClientProtocol, qui dérive de la classe abstraite WebClientProtocol .
#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
L’exemple de code suivant est le Math service Web XML à partir duquel la classe proxy précédente a été générée.
Important
Cet exemple contient une zone de texte qui accepte l’entrée utilisateur, qui est une menace de sécurité potentielle. Par défaut, ASP.NET pages web valident que l’entrée utilisateur n’inclut pas de script ou d’éléments HTML. Pour plus d’informations, consultez Vue d’ensemble des exploits de script.
<%@ 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
Remarques
Si vous créez un client de service web XML, une classe proxy dérivée indirectement ou directement du WebClientProtocol service web XML doit être créée. Lorsque le client du service web XML appelle à l’aide de SOAP, la classe proxy doit dériver de SoapHttpClientProtocol, qui dérive de HttpWebClientProtocol. HttpWebClientProtocol, à son tour, dérive de WebClientProtocol.
Pour communiquer avec un service web XML, créez une classe proxy qui dérive indirectement ou directement du WebClientProtocol service Web XML que vous souhaitez appeler. Au lieu de créer manuellement la classe proxy, utilisez l’outil Web Services Description Language (Wsdl.exe) pour créer une classe proxy pour une description de service web XML donnée. Lorsqu’une classe proxy est générée pour le protocole SOAP, les appels synchrones aux méthodes de service Web XML sont effectués via la Invoke méthode, tandis que les appels asynchrones sont effectués à l’aide de la BeginInvoke méthode et de la EndInvoke méthode.
Notes pour les héritiers
Lorsque vous remplacez cette classe, vous pouvez introduire des méthodes dans la classe dérivée qui sont spécifiques à un type particulier de service Web XML. Les méthodes capturent les paramètres et appellent la classe de base pour effectuer le travail de communication avec le service Web XML. Si les méthodes introduites sont asynchrones, appelez la BeginInvoke(String, Object[], AsyncCallback, Object) méthode et la EndInvoke(IAsyncResult) méthode. Si les méthodes introduites sont synchrones, appelez la Invoke(String, Object[]) méthode. Le constructeur substitué définit généralement la Url propriété sur l’URL de la méthode de service Web XML.
Constructeurs
| Nom | Description |
|---|---|
| SoapHttpClientProtocol() |
Initialise une nouvelle instance de la classe SoapHttpClientProtocol. |
Propriétés
| Nom | Description |
|---|---|
| AllowAutoRedirect |
Obtient ou définit si le client suit automatiquement les redirections de serveur. (Hérité de HttpWebClientProtocol) |
| CanRaiseEvents |
Obtient une valeur indiquant si le composant peut déclencher un événement. (Hérité de Component) |
| ClientCertificates |
Obtient la collection de certificats clients. (Hérité de HttpWebClientProtocol) |
| ConnectionGroupName |
Obtient ou définit le nom du groupe de connexions pour la demande. (Hérité de WebClientProtocol) |
| Container |
Obtient le IContainer fichier qui contient le Component. (Hérité de Component) |
| CookieContainer |
Obtient ou définit la collection de cookies. (Hérité de HttpWebClientProtocol) |
| Credentials |
Obtient ou définit les informations d’identification de sécurité pour l’authentification du client du service web XML. (Hérité de WebClientProtocol) |
| DesignMode |
Obtient une valeur qui indique si la Component valeur est actuellement en mode création. (Hérité de Component) |
| EnableDecompression |
Obtient ou définit une valeur qui indique si la décompression est activée pour cela HttpWebClientProtocol. (Hérité de HttpWebClientProtocol) |
| Events |
Obtient la liste des gestionnaires d’événements qui sont attachés à ce Component. (Hérité de Component) |
| PreAuthenticate |
Obtient ou définit si la pré-authentification est activée. (Hérité de WebClientProtocol) |
| Proxy |
Obtient ou définit des informations de proxy pour effectuer une demande de service web XML via un pare-feu. (Hérité de HttpWebClientProtocol) |
| RequestEncoding |
Utilisé Encoding pour effectuer la requête cliente au service Web XML. (Hérité de WebClientProtocol) |
| Site |
Obtient ou définit le ISite de Component. (Hérité de Component) |
| SoapVersion |
Obtient ou définit la version du protocole SOAP utilisé pour effectuer la requête SOAP au service web XML. |
| Timeout |
Indique l’heure à laquelle un client de service web XML attend la réponse à une demande de service Web XML synchrone à arriver (en millisecondes). (Hérité de WebClientProtocol) |
| UnsafeAuthenticatedConnectionSharing |
Obtient ou définit une valeur qui indique si le partage de connexion est activé lorsque le client utilise l’authentification NTLM pour se connecter au serveur Web qui héberge le service Web XML. (Hérité de HttpWebClientProtocol) |
| Url |
Obtient ou définit l’URL de base du service Web XML demandé par le client. (Hérité de WebClientProtocol) |
| UseDefaultCredentials |
Obtient ou définit une valeur qui indique s’il faut définir la Credentials propriété sur la valeur de la DefaultCredentials propriété. (Hérité de WebClientProtocol) |
| UserAgent |
Obtient ou définit la valeur de l’en-tête de l’agent utilisateur envoyé avec chaque requête. (Hérité de HttpWebClientProtocol) |
Méthodes
| Nom | Description |
|---|---|
| Abort() |
Annule une demande à une méthode de service Web XML. (Hérité de WebClientProtocol) |
| BeginInvoke(String, Object[], AsyncCallback, Object) |
Démarre un appel asynchrone d’une méthode de service Web XML à l’aide de SOAP. |
| CancelAsync(Object) |
Annule un appel asynchrone à une méthode de service web XML, sauf si l’appel est déjà terminé. (Hérité de HttpWebClientProtocol) |
| CreateObjRef(Type) |
Crée un objet qui contient toutes les informations pertinentes requises pour générer un proxy utilisé pour communiquer avec un objet distant. (Hérité de MarshalByRefObject) |
| Discover() |
Lie dynamiquement à un service web XML décrit dans le document de découverte à l’adresse Url. |
| Dispose() |
Libère toutes les ressources utilisées par le Component. (Hérité de Component) |
| Dispose(Boolean) |
Libère les ressources non managées utilisées par les Component ressources gérées et libère éventuellement les ressources managées. (Hérité de Component) |
| EndInvoke(IAsyncResult) |
Termine un appel asynchrone d’une méthode de service Web XML à l’aide de SOAP. |
| Equals(Object) |
Détermine si l’objet spécifié est égal à l’objet actuel. (Hérité de Object) |
| GetHashCode() |
Sert de fonction de hachage par défaut. (Hérité de Object) |
| GetLifetimeService() |
Récupère l’objet de service de durée de vie actuel qui contrôle la stratégie de durée de vie de cette instance. (Hérité de MarshalByRefObject) |
| GetReaderForMessage(SoapClientMessage, Int32) |
Retourne une XmlReader valeur initialisée avec la Stream propriété du SoapClientMessage paramètre. |
| GetService(Type) |
Retourne un objet qui représente un service fourni par le Component ou par son Container. (Hérité de Component) |
| GetType() |
Obtient la Type de l’instance actuelle. (Hérité de Object) |
| GetWebRequest(Uri) |
Crée un WebRequest pour le fichier spécifié |
| GetWebResponse(WebRequest, IAsyncResult) |
Retourne une réponse d’une requête asynchrone à une méthode de service Web XML. (Hérité de HttpWebClientProtocol) |
| GetWebResponse(WebRequest) |
Retourne une réponse d’une requête synchrone à une méthode de service Web XML. (Hérité de HttpWebClientProtocol) |
| GetWriterForMessage(SoapClientMessage, Int32) |
Retourne un XmlWriter initialisé avec la Stream propriété du SoapClientMessage paramètre. |
| InitializeLifetimeService() |
Obtient un objet de service de durée de vie pour contrôler la stratégie de durée de vie de cette instance. (Hérité de MarshalByRefObject) |
| Invoke(String, Object[]) |
Appelle une méthode de service Web XML de façon synchrone à l’aide de SOAP. |
| InvokeAsync(String, Object[], SendOrPostCallback, Object) |
Appelle la méthode spécifiée de façon asynchrone. |
| InvokeAsync(String, Object[], SendOrPostCallback) |
Appelle la méthode spécifiée de façon asynchrone. |
| MemberwiseClone() |
Crée une copie superficielle du Objectactuel. (Hérité de Object) |
| MemberwiseClone(Boolean) |
Crée une copie superficielle de l’objet actuel MarshalByRefObject . (Hérité de MarshalByRefObject) |
| ToString() |
Retourne un String nom contenant le nom du Component, le cas échéant. Cette méthode ne doit pas être remplacée. (Hérité de Component) |
Événements
| Nom | Description |
|---|---|
| Disposed |
Se produit lorsque le composant est supprimé par un appel à la Dispose() méthode. (Hérité de Component) |
S’applique à
Cohérence de thread
Ce type est thread safe.