HttpSimpleClientProtocol Classe

Definição

Representa a classe base para comunicar com um serviço Web XML usando as simples ligações de protocolos HTTP-GET e 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
Herança
Derivado
Atributos

Exemplos

O seguinte exemplo de código é uma classe proxy gerada por Wsdl.exe para o Math serviço Web XML abaixo. A classe proxy deriva de HttpGetClientProtocol, que deriva da classe abstrata 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::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

O exemplo de código seguinte é o Math serviço Web XML, a partir do qual a classe proxy anterior foi criada.

#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

Observações

Esta classe especifica a maior parte da implementação para comunicação com um serviço Web XML via HTTP usando codificadores para codificar os parâmetros e valores de retorno em formatos MIME comuns. Estes codificadores derivam da MimeFormatter classe. Por defeito, uma classe proxy derivada de HttpSimpleClientProtocol codifica parâmetros usando o tipo MIME application/x-www-form-urlencoded e a resposta em XML simples. Forformatadores de mime personalizados podem ser especificados usando o HttpMethodAttribute atributo, no entanto, não há suporte para integrar isto numa descrição de serviço e geração de proxy.

Notes to Inheritors: Ao sobrepor esta classe, pode introduzir métodos na classe derivada que são específicos de um determinado tipo de serviço Web XML. Os métodos simplesmente captam os parâmetros e chamam a classe base para fazer o trabalho de comunicação com o site. Se os métodos introduzidos forem assíncronos, chame-se os BeginInvoke métodos e EndInvoke . Se os métodos introduzidos forem síncronos, chama-se o Invoke método. O construtor sobreposto normalmente define a Url propriedade para o URI do método do serviço Web XML.

A ferramenta Web Services Description Language (Wsdl.exe) gera classes derivadas de HttpSimpleClientProtocol para uma dada Descrição de Serviço.

Construtores

Name Description
HttpSimpleClientProtocol()

Inicializa uma nova instância da HttpSimpleClientProtocol classe.

Propriedades

Name Description
AllowAutoRedirect

Obtém ou define se o cliente segue automaticamente os redirecionamentos do servidor.

(Herdado de HttpWebClientProtocol)
CanRaiseEvents

Obtém um valor que indica se o componente pode gerar um evento.

(Herdado de Component)
ClientCertificates

Recebe a coleção de certificados de clientes.

(Herdado de HttpWebClientProtocol)
ConnectionGroupName

Obtém ou define o nome do grupo de ligação para o pedido.

(Herdado de WebClientProtocol)
Container

Obtém o IContainer que contém o Component.

(Herdado de Component)
CookieContainer

Recebe ou define a coleção de bolachas.

(Herdado de HttpWebClientProtocol)
Credentials

Obtém ou definem credenciais de segurança para a autenticação de clientes de serviços Web XML.

(Herdado de WebClientProtocol)
DesignMode

Obtém um valor que indica se o Component está atualmente em modo de design.

(Herdado de Component)
EnableDecompression

Obtém ou define um valor que indica se a descompressão está ativada para este HttpWebClientProtocol.

(Herdado de HttpWebClientProtocol)
Events

Obtém a lista de gestores de eventos que estão ligados a isto Component.

(Herdado de Component)
PreAuthenticate

Obtém ou define se a pré-autenticação está ativada.

(Herdado de WebClientProtocol)
Proxy

Obtém ou define informação proxy para fazer um pedido de serviço Web XML através de um firewall.

(Herdado de HttpWebClientProtocol)
RequestEncoding

Eles Encoding eram usados para fazer o pedido do cliente ao serviço Web XML.

(Herdado de WebClientProtocol)
Site

Obtém ou define o ISite do Component.

(Herdado de Component)
Timeout

Indica o tempo em que um cliente de serviço Web XML espera pela resposta a um pedido síncrono de serviço Web XML (em milissegundos).

(Herdado de WebClientProtocol)
UnsafeAuthenticatedConnectionSharing

Recebe ou define um valor que indica se a partilha de ligação está ativada quando o cliente utiliza autenticação NTLM para se ligar ao servidor Web que aloja o serviço Web XML.

(Herdado de HttpWebClientProtocol)
Url

Obtém ou define a URL base do serviço Web XML que o cliente está a solicitar.

(Herdado de WebClientProtocol)
UseDefaultCredentials

Obtém ou define um valor que indica se deve definir a Credentials propriedade para o valor da DefaultCredentials propriedade.

(Herdado de WebClientProtocol)
UserAgent

Recebe ou define o valor do cabeçalho do agente de utilizador que é enviado com cada pedido.

(Herdado de HttpWebClientProtocol)

Métodos

Name Description
Abort()

Cancela um pedido para um método de serviço Web XML.

(Herdado de WebClientProtocol)
BeginInvoke(String, String, Object[], AsyncCallback, Object)

Inicia uma invocação assíncrona de um método de um serviço Web XML.

CancelAsync(Object)

Cancela uma chamada assíncrona para um método de serviço Web XML, a menos que a chamada já tenha sido concluída.

(Herdado de HttpWebClientProtocol)
CreateObjRef(Type)

Cria um objeto que contém toda a informação relevante necessária para gerar um proxy usado para comunicar com um objeto remoto.

(Herdado de MarshalByRefObject)
Dispose()

Liberta todos os recursos utilizados pelo Component.

(Herdado de Component)
Dispose(Boolean)

Liberta os recursos não geridos usados pelo Component e opcionalmente liberta os recursos geridos.

(Herdado de Component)
EndInvoke(IAsyncResult)

Completa a invocação assíncrona de um método de serviço Web XML usando HTTP.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetLifetimeService()

Recupera o objeto de serviço de tempo de vida atual que controla a política de vida útil neste caso.

(Herdado de MarshalByRefObject)
GetService(Type)

Devolve um objeto que representa um serviço fornecido pelo Component ou pelo seu Container.

(Herdado de Component)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
GetWebRequest(Uri)

Cria um WebRequest para o URI especificado.

(Herdado de HttpWebClientProtocol)
GetWebResponse(WebRequest, IAsyncResult)

Retorna uma resposta de um pedido assíncrono para um método de serviço Web XML.

(Herdado de HttpWebClientProtocol)
GetWebResponse(WebRequest)

Retorna uma resposta de um pedido síncrono para um método de serviço Web XML.

(Herdado de HttpWebClientProtocol)
InitializeLifetimeService()

Obtém-se um objeto de serviço vitalício para controlar a apólice vitalícia neste caso.

(Herdado de MarshalByRefObject)
Invoke(String, String, Object[])

Invoca um método de serviço Web XML usando HTTP.

InvokeAsync(String, String, Object[], SendOrPostCallback, Object)

Invoca o método especificado de forma assíncrona, mantendo um estado associado.

InvokeAsync(String, String, Object[], SendOrPostCallback)

Invoca o método especificado de forma assíncrona.

MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
MemberwiseClone(Boolean)

Cria uma cópia superficial do objeto atual MarshalByRefObject .

(Herdado de MarshalByRefObject)
ToString()

Devolve a String contendo o nome do Component, se existir. Este método não deve ser ultrapassado.

(Herdado de Component)

evento

Name Description
Disposed

Ocorre quando o componente é eliminado por uma chamada ao Dispose() método.

(Herdado de Component)

Aplica-se a

Segurança de Thread

Este tipo é seguro para fios.

Ver também