Sdílet prostřednictvím


WebClientProtocol Třída

Definice

Určuje základní třídu pro všechny klientské proxy webové služby XML vytvořené pomocí 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
Dědičnost
WebClientProtocol
Odvozené
Atributy

Příklady

Následující příklad je webový formulář ASP.NET, který volá webovou službu XML s názvem Math. EnterBtn_Click V rámci funkce webový formulář nastaví informace o proxy serveru a pověření klienta ve třídě proxy před voláním metody vzdálené webové služby XML.

Důležité

Tento příklad obsahuje textové pole, které přijímá vstup uživatele, což je potenciální bezpečnostní hrozba. Ve výchozím nastavení ASP.NET webové stránky ověřte, že uživatelský vstup neobsahuje skript nebo elementy HTML. Další informace najdete v tématu Přehled zneužití skriptů.

<%@ 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>

Poznámky

Vlastnosti WebClientProtocol třídy slouží k řízení chování přenosu použitého k přenosu požadavku a odpovědi webové služby XML. Vlastnosti v této třídě mapuje na vlastnosti nalezené v WebRequest. Instance tříd odvozených z WebRequest, například HttpWebRequest, se používají jako mechanismus přenosu pro webové služby XML vytvořené pomocí ASP.NET.

Chcete-li komunikovat s webovou službou XML, je nutné vytvořit třídu proxy odvozenou nepřímo nebo přímo z WebClientProtocol webové služby XML, kterou chcete volat. Místo ručního vytváření třídy proxy můžete pomocí nástroje Wsdl.exe vytvořit třídu proxy pro popis služby dané webové služby XML. Vzhledem k tomu WebClientProtocol , že je základní třída pro klientský proxy server, najdete její vlastnosti ve svých třídách proxy. Tyto vlastnosti jsou užitečné pro řízení chování požadavků základního přenosu. Například použijte Credentials vlastnost pro volání ověřených webových služeb XML. Mnoho vlastností WebClientProtocol se používá k inicializaci objektu WebRequest , který se používá k vytvoření webového požadavku.

Konstruktory

WebClientProtocol()

Inicializuje novou instanci WebClientProtocol třídy .

Vlastnosti

CanRaiseEvents

Získá hodnotu označující, zda komponenta může vyvolat událost.

(Zděděno od Component)
ConnectionGroupName

Získá nebo nastaví název skupiny připojení pro požadavek.

Container

Získá objekt IContainer , který obsahuje Component.

(Zděděno od Component)
Credentials

Získá nebo nastaví pověření zabezpečení pro ověřování klienta webové služby XML.

DesignMode

Získá hodnotu, která označuje, zda je aktuálně v režimu návrhu Component .

(Zděděno od Component)
Events

Získá seznam obslužných rutin událostí, které jsou připojeny k tomuto Component.

(Zděděno od Component)
PreAuthenticate

Získá nebo nastaví, zda předběžné ověřování je povoleno.

RequestEncoding

Slouží Encoding k provedení požadavku klienta na webovou službu XML.

Site

Získá nebo nastaví ISite z Component.

(Zděděno od Component)
Timeout

Označuje čas, kdy klient webové služby XML čeká na odpověď na synchronní požadavek webové služby XML (v milisekundách).

Url

Získá nebo nastaví základní adresu URL webové služby XML klient požaduje.

UseDefaultCredentials

Získá nebo nastaví hodnotu, která označuje, zda nastavit Credentials vlastnost na hodnotu DefaultCredentials vlastnosti.

Metody

Abort()

Zruší požadavek na metodu webové služby XML.

AddToCache(Type, Object)

Přidejte instanci obslužné rutiny protokolu klienta do mezipaměti.

CreateObjRef(Type)

Vytvoří objekt, který obsahuje všechny relevantní informace potřebné k vygenerování proxy sloužící ke komunikaci se vzdáleným objektem.

(Zděděno od MarshalByRefObject)
Dispose()

Uvolní všechny prostředky používané nástrojem Component.

(Zděděno od Component)
Dispose(Boolean)

Uvolní nespravované prostředky používané nástrojem Component a volitelně uvolní spravované prostředky.

(Zděděno od Component)
Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetFromCache(Type)

Získá instanci obslužné rutiny protokolu klienta z mezipaměti.

GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetLifetimeService()
Zastaralé.

Načte aktuální životnost objektu služby, který řídí zásady životnosti pro tuto instanci.

(Zděděno od MarshalByRefObject)
GetService(Type)

Vrátí objekt, který představuje službu poskytovanou objektem Component nebo .Container

(Zděděno od Component)
GetType()

Type Získá z aktuální instance.

(Zděděno od Object)
GetWebRequest(Uri)

Vytvoří WebRequest instanci pro zadaný uriobjekt . Tato chráněná metoda je volána klientskou infrastrukturou webové služby XML k získání nového WebRequest přenosového objektu pro přenos požadavku webové služby XML.

GetWebResponse(WebRequest)

Vrátí odpověď ze synchronního požadavku na metodu webové služby XML.

GetWebResponse(WebRequest, IAsyncResult)

Vrátí odpověď z asynchronního požadavku na metodu webové služby XML. Tato chráněná metoda je volána klientskou infrastrukturou webové služby XML k získání odpovědi z asynchronního požadavku webové služby XML.

InitializeLifetimeService()
Zastaralé.

Získá životnost objektu služby, který řídí zásady životnosti pro tuto instanci.

(Zděděno od MarshalByRefObject)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
MemberwiseClone(Boolean)

Vytvoří mělkou kopii aktuálního MarshalByRefObject objektu.

(Zděděno od MarshalByRefObject)
ToString()

String Vrátí hodnotu obsahující název , Componentpokud existuje. Tato metoda by neměla být přepsána.

(Zděděno od Component)

Událost

Disposed

Vyvolá se, když je komponenta uvolněna voláním Dispose() metody .

(Zděděno od Component)

Platí pro

Bezpečný přístup z více vláken

Vlastnosti této třídy jsou zkopírovány do nové instance objektu WebRequest pro každé volání metody webové služby XML. I když můžete volat metody webové služby XML na stejné WebClientProtocol instanci z různých vláken současně, není provedena žádná synchronizace, která by zajistila, že konzistentní snímek vlastností bude přenesen do objektu WebRequest . Proto pokud potřebujete upravit vlastnosti a provést souběžná volání metod z různých vláken, měli byste použít jinou instanci proxy webové služby XML nebo poskytnout vlastní synchronizaci.

Viz také