HttpSimpleClientProtocol Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Představuje základní třídu pro komunikaci s webovou službou XML pomocí jednoduchých vazeb protokolů HTTP-GET a HTTP-POST.
public ref class HttpSimpleClientProtocol abstract : System::Web::Services::Protocols::HttpWebClientProtocol
public abstract class HttpSimpleClientProtocol : System.Web.Services.Protocols.HttpWebClientProtocol
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class HttpSimpleClientProtocol : System.Web.Services.Protocols.HttpWebClientProtocol
type HttpSimpleClientProtocol = class
inherit HttpWebClientProtocol
[<System.Runtime.InteropServices.ComVisible(true)>]
type HttpSimpleClientProtocol = class
inherit HttpWebClientProtocol
Public MustInherit Class HttpSimpleClientProtocol
Inherits HttpWebClientProtocol
- Dědičnost
-
HttpSimpleClientProtocol
- Odvozené
- Atributy
Příklady
Následující příklad kódu je třída proxy vygenerovaná Wsdl.exe pro Math
níže uvedené webové služby XML. Třída proxy je odvozena z HttpGetClientProtocoltřídy , která je odvozena z abstraktní HttpSimpleClientProtocol třídy.
#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;
public ref class MyMath: public System::Web::Services::Protocols::HttpGetClientProtocol
{
public:
[System::Diagnostics::DebuggerStepThroughAttribute]
MyMath()
{
this->Url = "http://www.contoso.com/math.asmx";
}
[System::Diagnostics::DebuggerStepThroughAttribute]
[System::Web::Services::Protocols::HttpMethodAttribute(System::Web::Services::Protocols::XmlReturnReader::typeid,
System::Web::Services::Protocols::UrlParameterWriter::typeid)]
[returnvalue:System::Xml::Serialization::XmlRootAttribute("snippet1>",Namespace="http://www.contoso.com/",IsNullable=false)]
int Add( String^ num1, String^ num2 )
{
array<Object^>^temp0 = {num1,num2};
return *dynamic_cast<int^>(this->Invoke( "Add", (String::Concat( this->Url, "/Add" )), temp0 ));
}
[System::Diagnostics::DebuggerStepThroughAttribute]
System::IAsyncResult^ BeginAdd( String^ num1, String^ num2, System::AsyncCallback^ callback, Object^ asyncState )
{
array<Object^>^temp1 = {num1,num2};
return this->BeginInvoke( "Add", (String::Concat( this->Url, "/Add" )), temp1, callback, asyncState );
}
[System::Diagnostics::DebuggerStepThroughAttribute]
int EndAdd( System::IAsyncResult^ asyncResult )
{
return *dynamic_cast<int^>(this->EndInvoke( asyncResult ));
}
};
using System.Diagnostics;
using System.Xml.Serialization;
using System;
using System.Web.Services.Protocols;
using System.Web.Services;
public class MyMath : System.Web.Services.Protocols.HttpGetClientProtocol {
[System.Diagnostics.DebuggerStepThroughAttribute()]
public MyMath()
{
this.Url = "http://www.contoso.com/math.asmx";
}
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.Web.Services.Protocols.HttpMethodAttribute(typeof(System.Web.Services.Protocols.XmlReturnReader), typeof(System.Web.Services.Protocols.UrlParameterWriter))]
[return: System.Xml.Serialization.XmlRootAttribute("int", Namespace = "http://www.contoso.com/", IsNullable = false)]
public int Add(string num1, string num2)
{
return ((int)(this.Invoke("Add", (this.Url + "/Add"),
new object[] { num1, num2 })));
}
[System.Diagnostics.DebuggerStepThroughAttribute()]
public System.IAsyncResult BeginAdd(string num1, string num2, System.AsyncCallback callback, object asyncState)
{
return this.BeginInvoke("Add", (this.Url + "/Add"),
new object[] { num1, num2 }, callback, asyncState);
}
[System.Diagnostics.DebuggerStepThroughAttribute()]
public int EndAdd(System.IAsyncResult asyncResult)
{
return ((int)(this.EndInvoke(asyncResult)));
}
}
Option Strict On
Option Explicit On
Imports System.Diagnostics
Imports System.Web.Services
Imports System.Web.Services.Protocols
Imports System.Xml.Serialization
Public Class MyMath
Inherits System.Web.Services.Protocols.HttpGetClientProtocol
<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.HttpMethodAttribute(GetType(System.Web.Services.Protocols.XmlReturnReader), GetType(System.Web.Services.Protocols.UrlParameterWriter))> _
Public Function Add(ByVal num1 As String, ByVal num2 As String) As <System.Xml.Serialization.XmlRootAttribute("int", [Namespace]:="http://www.contoso.com/", IsNullable:=false)> Integer
Return CType(Me.Invoke("Add", (Me.Url + "/Add"), New Object() {num1, num2}),Integer)
End Function
<System.Diagnostics.DebuggerStepThroughAttribute()> _
Public Function BeginAdd(ByVal num1 As String, ByVal num2 As String, ByVal callback As System.AsyncCallback, ByVal asyncState As Object) As System.IAsyncResult
Return Me.BeginInvoke("Add", (Me.Url + "/Add"), New Object() {num1, num2}, callback, asyncState)
End Function
<System.Diagnostics.DebuggerStepThroughAttribute()> _
Public Function EndAdd(ByVal asyncResult As System.IAsyncResult) As Integer
Return CType(Me.EndInvoke(asyncResult),Integer)
End Function
End Class
Následující příklad kódu je Math
webová služba XML, ze které byla vytvořena předchozí třída proxy.
#using <System.EnterpriseServices.dll>
#using <System.Web.Services.dll>
using namespace System::Web::Services;
using namespace System;
public ref class Math
{
public:
[WebMethod]
int Add( int num1, int num2 )
{
return num1 + num2;
}
};
using System.Web.Services;
using System;
public class Math
{
[WebMethod]
public int Add(int num1, int num2)
{
return num1 + num2;
}
}
Imports System.Web.Services
Public Class Math
<WebMethod()> _
Public Function Add(num1 As Integer, num2 As Integer)As Integer
Return num1 + num2
End Function
End Class
Poznámky
Tato třída určuje většinu implementace pro komunikaci s webovou službou XML přes http pomocí kodérů ke kódování parametrů a vrácení hodnot do běžných formátů MIME. Tyto kodéry jsou odvozeny MimeFormatter od třídy . Ve výchozím nastavení třída proxy odvozená z HttpSimpleClientProtocol kóduje parametry pomocí typu MIME application/x-www-form-urlencoded a odpovědi ve formátu prostého KÓDU XML. Vlastní formátovací moduly MIME je možné zadat pomocí atributu HttpMethodAttribute , není však podporována jejich integrace do popisu služby a generování proxy serveru.
Notes to Inheritors:
Při přepsání této třídy můžete do odvozené třídy zavést metody, které jsou specifické pro konkrétní typ webové služby XML. Metody jednoduše zachytí parametry a zavolá základní třídu, která provede práci při komunikaci s webem. Pokud jsou zavedené metody asynchronní, zavolejte BeginInvoke metody a EndInvoke . Pokud jsou zavedené metody synchronní, zavolejte metodu Invoke . Přepsaný konstruktor obvykle nastaví Url vlastnost na identifikátor URI metody webové služby XML.
Nástroj Web Services Description Language (Wsdl.exe) generuje odvozené třídy HttpSimpleClientProtocol pro daný popis služby.
Konstruktory
HttpSimpleClientProtocol() |
Inicializuje novou instanci HttpSimpleClientProtocol třídy . |
Vlastnosti
AllowAutoRedirect |
Získá nebo nastaví, zda klient automaticky sleduje přesměrování serveru. (Zděděno od HttpWebClientProtocol) |
CanRaiseEvents |
Získá hodnotu označující, zda komponenta může vyvolat událost. (Zděděno od Component) |
ClientCertificates |
Získá kolekci klientských certifikátů. (Zděděno od HttpWebClientProtocol) |
ConnectionGroupName |
Získá nebo nastaví název skupiny připojení pro požadavek. (Zděděno od WebClientProtocol) |
Container |
Získá objekt IContainer , který obsahuje Component. (Zděděno od Component) |
CookieContainer |
Získá nebo nastaví kolekci souborů cookie. (Zděděno od HttpWebClientProtocol) |
Credentials |
Získá nebo nastaví pověření zabezpečení pro ověřování klienta webové služby XML. (Zděděno od WebClientProtocol) |
DesignMode |
Získá hodnotu, která označuje, zda je aktuálně v režimu návrhu Component . (Zděděno od Component) |
EnableDecompression |
Získá nebo nastaví hodnotu, která označuje, zda je pro tuto HttpWebClientProtocolfunkci povolena dekomprese. (Zděděno od HttpWebClientProtocol) |
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. (Zděděno od WebClientProtocol) |
Proxy |
Získá nebo nastaví informace proxy pro vytvoření požadavku webové služby XML přes bránu firewall. (Zděděno od HttpWebClientProtocol) |
RequestEncoding |
Slouží Encoding k provedení požadavku klienta na webovou službu XML. (Zděděno od WebClientProtocol) |
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). (Zděděno od WebClientProtocol) |
UnsafeAuthenticatedConnectionSharing |
Získá nebo nastaví hodnotu, která označuje, zda sdílení připojení je povoleno, když klient používá ověřování NTLM pro připojení k webovému serveru, který je hostitelem webové služby XML. (Zděděno od HttpWebClientProtocol) |
Url |
Získá nebo nastaví základní adresu URL webové služby XML požaduje klient. (Zděděno od WebClientProtocol) |
UseDefaultCredentials |
Získá nebo nastaví hodnotu, která označuje, zda nastavit Credentials vlastnost na hodnotu DefaultCredentials vlastnosti. (Zděděno od WebClientProtocol) |
UserAgent |
Získá nebo nastaví hodnotu pro hlavičku uživatelského agenta, která se odešle s každou žádostí. (Zděděno od HttpWebClientProtocol) |
Metody
Abort() |
Zruší požadavek na metodu webové služby XML. (Zděděno od WebClientProtocol) |
BeginInvoke(String, String, Object[], AsyncCallback, Object) |
Spustí asynchronní vyvolání metody webové služby XML. |
CancelAsync(Object) |
Zruší asynchronní volání metody webové služby XML, pokud volání již dokončeno. (Zděděno od HttpWebClientProtocol) |
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) |
EndInvoke(IAsyncResult) |
Dokončí asynchronní vyvolání metody webové služby XML pomocí protokolu HTTP. |
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
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ří pro WebRequest zadaný identifikátor URI . (Zděděno od HttpWebClientProtocol) |
GetWebResponse(WebRequest) |
Vrátí odpověď ze synchronního požadavku na metodu webové služby XML. (Zděděno od HttpWebClientProtocol) |
GetWebResponse(WebRequest, IAsyncResult) |
Vrátí odpověď z asynchronního požadavku na metodu webové služby XML. (Zděděno od HttpWebClientProtocol) |
InitializeLifetimeService() |
Zastaralé.
Získá životnost objektu služby, který řídí zásady životnosti pro tuto instanci. (Zděděno od MarshalByRefObject) |
Invoke(String, String, Object[]) |
Vyvolá metodu webové služby XML pomocí protokolu HTTP. |
InvokeAsync(String, String, Object[], SendOrPostCallback) |
Vyvolá zadanou metodu asynchronně. |
InvokeAsync(String, String, Object[], SendOrPostCallback, Object) |
Vyvolá zadanou metodu asynchronně při zachování přidruženého stavu. |
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
Tento typ je bezpečný pro přístup z více vláken.