HttpPostClientProtocol Classe

Definizione

Classe di base per i proxy client del servizio Web XML che utilizzano il protocollo HTTP-POST.

public ref class HttpPostClientProtocol : System::Web::Services::Protocols::HttpSimpleClientProtocol
public class HttpPostClientProtocol : System.Web.Services.Protocols.HttpSimpleClientProtocol
type HttpPostClientProtocol = class
    inherit HttpSimpleClientProtocol
Public Class HttpPostClientProtocol
Inherits HttpSimpleClientProtocol
Ereditarietà

Esempio

L'esempio seguente è una classe proxy generata dall'utilità Wsdl.exe per il Math servizio Web XML seguente. La classe proxy deriva da HttpPostClientProtocol, che deriva dalla classe astratta HttpSimpleClientProtocol .

#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::HttpPostClientProtocol
{
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::HtmlFormParameterWriter::typeid)]
   [returnvalue:System::Xml::Serialization::XmlRootAttribute("snippet1>",Namespace="http://www.contoso.com/",IsNullable=false)]
   int Add( String^ num1, String^ num2 )
   {
      array<Object^>^temp2 = {num1,num2};
      return  *dynamic_cast<int^>(this->Invoke( "Add", (String::Concat( this->Url, "/Add" )), temp2 ));
   }

   [System::Diagnostics::DebuggerStepThroughAttribute]
   System::IAsyncResult^ BeginAdd( String^ num1, String^ num2, System::AsyncCallback^ callback, Object^ asyncState )
   {
      array<Object^>^temp3 = {num1,num2};
      return this->BeginInvoke( "Add", (this->Url + "/Add" ), temp3, 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.HttpPostClientProtocol
{
    [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.HtmlFormParameterWriter))]
    [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.HttpPostClientProtocol
    
    <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.HtmlFormParameterWriter))>  _
    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

L'esempio seguente è il Math servizio Web XML, da cui è stata creata la classe proxy precedente.

<%@ WebService Language="C#" Class="Math"%>
 using System.Web.Services;
 using System;
 
 public class Math {
      [ WebMethod ]
      public int Add(int num1, int num2) {
          return num1+num2;
          }
 }
<%@ WebService Language="VB" Class="Math"%>
Imports System.Web.Services
Imports System

Public Class Math
    <WebMethod()> _
    Public Function Add(num1 As Integer, num2 As Integer) As Integer
        Return num1 + num2
    End Function 'Add
End Class 'Math

Commenti

Quando un client del servizio Web XML usa il protocollo HTTP-POST, per impostazione predefinita i parametri vengono codificati all'interno del corpo HTTP usando le regole di codifica URL e utilizza xml normale per la risposta. Questo protocollo usa classi che derivano da MimeFormatter per codificare i parametri e restituire valori in formati MIME standard. I codificatori da usare sono specificati nella descrizione del servizio.

Se si compila un client del servizio Web XML utilizzando ASP.NET, è necessario creare una classe proxy derivata indirettamente o direttamente da WebClientProtocol per il servizio Web XML che si desidera chiamare. Quando il client del servizio Web XML chiama tramite HTTP, derivare la classe HttpSimpleClientProtocolproxy , che a sua volta deriva da WebClientProtocol.

HttpGetClientProtocol e HttpPostClientProtocol derivano da HttpSimpleClientProtocol, fornendo il supporto per chiamare un metodo di servizio Web XML usando rispettivamente HTTP-GET e HTTP-POST. I client che chiamano un servizio Web XML tramite SOAP devono derivare da SoapHttpClientProtocol.

Per informazioni dettagliate sulla creazione di una classe proxy, vedere Creazione di un proxy del servizio Web XML.

Costruttori

Nome Descrizione
HttpPostClientProtocol()

Inizializza una nuova istanza della classe HttpPostClientProtocol.

Proprietà

Nome Descrizione
AllowAutoRedirect

Ottiene o imposta un valore che indica se il client segue automaticamente i reindirizzamenti del server.

(Ereditato da HttpWebClientProtocol)
CanRaiseEvents

Ottiene un valore che indica se il componente può generare un evento.

(Ereditato da Component)
ClientCertificates

Ottiene la raccolta di certificati client.

(Ereditato da HttpWebClientProtocol)
ConnectionGroupName

Ottiene o imposta il nome del gruppo di connessione per la richiesta.

(Ereditato da WebClientProtocol)
Container

Ottiene l'oggetto IContainer contenente l'oggetto Component.

(Ereditato da Component)
CookieContainer

Ottiene o imposta la raccolta di cookie.

(Ereditato da HttpWebClientProtocol)
Credentials

Ottiene o imposta le credenziali di sicurezza per l'autenticazione client del servizio Web XML.

(Ereditato da WebClientProtocol)
DesignMode

Ottiene un valore che indica se è Component attualmente in modalità progettazione.

(Ereditato da Component)
EnableDecompression

Ottiene o imposta un valore che indica se la decompressione è abilitata per l'oggetto HttpWebClientProtocol.

(Ereditato da HttpWebClientProtocol)
Events

Ottiene l'elenco dei gestori eventi associati a questo Componentoggetto .

(Ereditato da Component)
PreAuthenticate

Ottiene o imposta un valore che indica se la preautenticazione è abilitata.

(Ereditato da WebClientProtocol)
Proxy

Ottiene o imposta informazioni proxy per l'esecuzione di una richiesta di servizio Web XML tramite un firewall.

(Ereditato da HttpWebClientProtocol)
RequestEncoding

Oggetto Encoding utilizzato per effettuare la richiesta client al servizio Web XML.

(Ereditato da WebClientProtocol)
Site

Ottiene o imposta il ISite del Component.

(Ereditato da Component)
Timeout

Indica l'ora in cui un client del servizio Web XML attende l'arrivo della risposta a una richiesta di servizio Web XML sincrono (in millisecondi).

(Ereditato da WebClientProtocol)
UnsafeAuthenticatedConnectionSharing

Ottiene o imposta un valore che indica se la condivisione della connessione è abilitata quando il client utilizza l'autenticazione NTLM per connettersi al server Web che ospita il servizio Web XML.

(Ereditato da HttpWebClientProtocol)
Url

Ottiene o imposta l'URL di base del servizio Web XML richiesto dal client.

(Ereditato da WebClientProtocol)
UseDefaultCredentials

Ottiene o imposta un valore che indica se impostare la Credentials proprietà sul valore della DefaultCredentials proprietà .

(Ereditato da WebClientProtocol)
UserAgent

Ottiene o imposta il valore per l'intestazione dell'agente utente inviata con ogni richiesta.

(Ereditato da HttpWebClientProtocol)

Metodi

Nome Descrizione
Abort()

Annulla una richiesta a un metodo di servizio Web XML.

(Ereditato da WebClientProtocol)
BeginInvoke(String, String, Object[], AsyncCallback, Object)

Avvia una chiamata asincrona di un metodo di un servizio Web XML.

(Ereditato da HttpSimpleClientProtocol)
CancelAsync(Object)

Annulla una chiamata asincrona a un metodo di servizio Web XML, a meno che la chiamata non sia già stata completata.

(Ereditato da HttpWebClientProtocol)
CreateObjRef(Type)

Crea un oggetto che contiene tutte le informazioni pertinenti necessarie per generare un proxy utilizzato per comunicare con un oggetto remoto.

(Ereditato da MarshalByRefObject)
Dispose()

Rilascia tutte le risorse usate da Component.

(Ereditato da Component)
Dispose(Boolean)

Rilascia le risorse non gestite usate da Component e, facoltativamente, rilascia le risorse gestite.

(Ereditato da Component)
EndInvoke(IAsyncResult)

Completa la chiamata asincrona di un metodo di servizio Web XML tramite HTTP.

(Ereditato da HttpSimpleClientProtocol)
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetLifetimeService()

Recupera l'oggetto servizio di durata corrente che controlla i criteri di durata per questa istanza.

(Ereditato da MarshalByRefObject)
GetService(Type)

Restituisce un oggetto che rappresenta un servizio fornito da Component o da Container.

(Ereditato da Component)
GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
GetWebRequest(Uri)

Crea un'istanza WebRequest per l'URI specificato.

GetWebResponse(WebRequest, IAsyncResult)

Restituisce una risposta da una richiesta asincrona a un metodo di servizio Web XML.

(Ereditato da HttpWebClientProtocol)
GetWebResponse(WebRequest)

Restituisce una risposta da una richiesta sincrona a un metodo di servizio Web XML.

(Ereditato da HttpWebClientProtocol)
InitializeLifetimeService()

Ottiene un oggetto servizio di durata per controllare i criteri di durata per questa istanza.

(Ereditato da MarshalByRefObject)
Invoke(String, String, Object[])

Richiama un metodo di servizio Web XML tramite HTTP.

(Ereditato da HttpSimpleClientProtocol)
InvokeAsync(String, String, Object[], SendOrPostCallback, Object)

Richiama il metodo specificato in modo asincrono mantenendo uno stato associato.

(Ereditato da HttpSimpleClientProtocol)
InvokeAsync(String, String, Object[], SendOrPostCallback)

Richiama il metodo specificato in modo asincrono.

(Ereditato da HttpSimpleClientProtocol)
MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
MemberwiseClone(Boolean)

Crea una copia superficiale dell'oggetto corrente MarshalByRefObject .

(Ereditato da MarshalByRefObject)
ToString()

Restituisce un oggetto String contenente il nome dell'oggetto Component, se presente. Questo metodo non deve essere sottoposto a override.

(Ereditato da Component)

Eventi

Nome Descrizione
Disposed

Si verifica quando il componente viene eliminato da una chiamata al Dispose() metodo .

(Ereditato da Component)

Si applica a

Vedi anche