Partager via


WebClientProtocol Classe

Définition

Spécifie la classe de base pour tous les proxys clients de service web XML créés à l’aide de ASP.NET.

public ref class WebClientProtocol abstract : System::ComponentModel::Component
public abstract class WebClientProtocol : System.ComponentModel.Component
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class WebClientProtocol : System.ComponentModel.Component
type WebClientProtocol = class
    inherit Component
[<System.Runtime.InteropServices.ComVisible(true)>]
type WebClientProtocol = class
    inherit Component
Public MustInherit Class WebClientProtocol
Inherits Component
Héritage
WebClientProtocol
Dérivé
Attributs

Exemples

L’exemple suivant est un formulaire web ASP.NET, qui appelle un service web XML nommé Math. Dans la EnterBtn_Click fonction, le formulaire Web définit les informations de proxy et les informations d’identification du client sur la classe proxy avant d’appeler la méthode de service Web XML distante.

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.

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Net" %>
<html>
    <script language="C#" runat="server">
       void EnterBtn_Click(Object Src, EventArgs E) 
          {
             MyMath.Math math = new MyMath.Math();

             // Set the client-side credentials using the Credentials property.
             ICredentials credentials = new NetworkCredential("Joe","mydomain","password");
             math.Credentials = credentials;
             
             // Do not allow the server to redirect the request.
             math.AllowAutoRedirect = false;
             
             int total = math.Add(Convert.ToInt32(Num1.Text), Convert.ToInt32(Num2.Text));
             Total.Text = "Total: " + total.ToString();
         }
 
    </script>
 
    <body>
       <form action="MathClient.aspx" runat=server>
           
          Enter the two numbers you want to add and then press the Total button.
          <p>
          Number 1: <asp:textbox id="Num1" runat=server/>  +
          Number 2: <asp:textbox id="Num2" runat=server/> =
          <asp:button text="Total" Onclick="EnterBtn_Click" runat=server/>
          <p>
          <asp:label id="Total"  runat=server/>
          
       </form>
    </body>
 </html>
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Net" %>
<html>
    <script language="VB" runat="server">
    
        Sub EnterBtn_Click(src As Object, e As EventArgs)
            Dim math As New MyMath.Math()
            
            ' Set the client-side credentials using the Credentials property.
            Dim credentials As New NetworkCredential("Joe", "password", "mydomain")
            math.Credentials = credentials
            
            ' Do not allow the server to redirect the request.
            math.AllowAutoRedirect = False
            
            Dim iTotal As Integer = math.Add(Convert.ToInt32(Num1.Text), Convert.ToInt32(Num2.Text))
            Total.Text = "Total: " & iTotal.ToString()
        End Sub
 
    </script>
 
    <body>
       <form action="MathClient.aspx" runat=server>
           
          Enter the two numbers you want to add and then press the Total button.
          <p>
          Number 1: <asp:textbox id="Num1" runat=server/>  +
          Number 2: <asp:textbox id="Num2" runat=server/> =
          <asp:button text="Total" Onclick="EnterBtn_Click" runat=server/>
          <p>
          <asp:label id="Total"  runat=server/>
          
       </form>
    </body>
 </html>

Remarques

Les propriétés de la WebClientProtocol classe sont utilisées pour contrôler le comportement du transport utilisé pour transmettre la demande et la réponse du service Web XML. Les propriétés de cette classe mappent aux propriétés trouvées sur WebRequest. Les instances de classes dérivant de WebRequest, par exemple HttpWebRequest, sont utilisées comme mécanisme de transport pour les services Web XML créés à l’aide de ASP.NET.

Pour communiquer avec un service Web XML, vous devez créer une classe proxy dérivant indirectement ou directement à partir du WebClientProtocol service Web XML à appeler. Au lieu de créer manuellement la classe proxy, vous pouvez utiliser l’outil Wsdl.exe pour créer une classe proxy pour une description de service web XML donnée. Étant WebClientProtocol donné que la classe de base pour votre proxy client, vous trouverez ses propriétés sur vos classes proxy. Ces propriétés sont utiles pour contrôler le comportement de requête du transport sous-jacent. Par exemple, utilisez la Credentials propriété pour appeler des services Web XML authentifiés. La plupart des WebClientProtocol propriétés sont utilisées pour initialiser l’objet WebRequest utilisé pour effectuer la requête Web.

Constructeurs

Nom Description
WebClientProtocol()

Initialise une nouvelle instance de la classe WebClientProtocol.

Propriétés

Nom Description
CanRaiseEvents

Obtient une valeur indiquant si le composant peut déclencher un événement.

(Hérité de Component)
ConnectionGroupName

Obtient ou définit le nom du groupe de connexions pour la demande.

Container

Obtient le IContainer fichier qui contient le Component.

(Hérité de Component)
Credentials

Obtient ou définit les informations d’identification de sécurité pour l’authentification du client du service web XML.

DesignMode

Obtient une valeur qui indique si la Component valeur est actuellement en mode création.

(Hérité de Component)
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.

RequestEncoding

Utilisé Encoding pour effectuer la requête cliente au service Web XML.

Site

Obtient ou définit le ISiteComponent.

(Hérité de Component)
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).

Url

Obtient ou définit l’URL de base du service Web XML demandé par le client.

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é.

Méthodes

Nom Description
Abort()

Annule une demande à une méthode de service Web XML.

AddToCache(Type, Object)

Ajoutez une instance du gestionnaire de protocole client au cache.

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)
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)
Equals(Object)

Détermine si l’objet spécifié est égal à l’objet actuel.

(Hérité de Object)
GetFromCache(Type)

Obtient une instance d’un gestionnaire de protocole client à partir du cache.

GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetLifetimeService()
Obsolète.

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)
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 une WebRequest instance pour le fichier spécifié uri. Cette méthode protégée est appelée par l’infrastructure cliente du service web XML pour obtenir un nouvel WebRequest objet de transport pour transmettre la demande de service web XML.

GetWebResponse(WebRequest, IAsyncResult)

Retourne une réponse d’une requête asynchrone à une méthode de service Web XML. Cette méthode protégée est appelée par l’infrastructure cliente du service web XML pour obtenir la réponse à partir d’une demande de service web XML asynchrone.

GetWebResponse(WebRequest)

Retourne une réponse d’une requête synchrone à une méthode de service Web XML.

InitializeLifetimeService()
Obsolète.

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)
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

Les propriétés de cette classe sont copiées dans une nouvelle instance d’un WebRequest objet pour chaque appel de méthode de service Web XML. Bien que vous puissiez appeler des méthodes de service Web XML sur la même WebClientProtocol instance à partir de différents threads en même temps, il n’existe aucune synchronisation effectuée pour vous assurer qu’un instantané cohérent des propriétés est transféré vers l’objet WebRequest . Par conséquent, si vous devez modifier les propriétés et effectuer des appels de méthode simultanés à partir de différents threads, vous devez utiliser une autre instance du proxy de service web XML ou fournir votre propre synchronisation.

Voir aussi