BasicHttpBinding Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa uma associação que um serviço do WCF (Windows Communication Foundation) pode usar para configurar e expor pontos de extremidade capazes de se comunicar com clientes e serviços Web baseados em ASMX e outros serviços que estejam em conformidade com o WS-I Basic Profile 1.1.
public ref class BasicHttpBinding : System::ServiceModel::HttpBindingBase
public ref class BasicHttpBinding : System::ServiceModel::Channels::Binding, System::ServiceModel::Channels::IBindingRuntimePreferences
public class BasicHttpBinding : System.ServiceModel.HttpBindingBase
public class BasicHttpBinding : System.ServiceModel.Channels.Binding, System.ServiceModel.Channels.IBindingRuntimePreferences
type BasicHttpBinding = class
inherit HttpBindingBase
type BasicHttpBinding = class
inherit Binding
interface IBindingRuntimePreferences
Public Class BasicHttpBinding
Inherits HttpBindingBase
Public Class BasicHttpBinding
Inherits Binding
Implements IBindingRuntimePreferences
- Herança
- Herança
- Derivado
- Implementações
Exemplos
O exemplo a seguir mostra como configurar o BasicHttpBinding em um arquivo de configuração de aplicativo.
O exemplo a seguir mostra como configurar BasicHttpBindingprogramaticamente .
[ServiceContract(Namespace = "http://UE.ServiceModel.Samples")]
public interface ICalculator
{
[OperationContract(IsOneWay = false)]
double Add(double n1, double n2);
[OperationContract(IsOneWay = false)]
double Subtract(double n1, double n2);
[OperationContract(IsOneWay = false)]
double Multiply(double n1, double n2);
[OperationContract(IsOneWay = false)]
double Divide(double n1, double n2);
}
public class CalculatorService : ICalculator
{
public double Add(double n1, double n2)
{
double result = n1 + n2;
Console.WriteLine("Received Add({0},{1})", n1, n2);
Console.WriteLine("Return: {0}", result);
return result;
}
public double Subtract(double n1, double n2)
{
double result = n1 - n2;
Console.WriteLine("Received Subtract({0},{1})", n1, n2);
Console.WriteLine("Return: {0}", result);
return result;
}
public double Multiply(double n1, double n2)
{
double result = n1 * n2;
Console.WriteLine("Received Multiply({0},{1})", n1, n2);
Console.WriteLine("Return: {0}", result);
return result;
}
public double Divide(double n1, double n2)
{
double result = n1 / n2;
Console.WriteLine("Received Divide({0},{1})", n1, n2);
Console.WriteLine("Return: {0}", result);
return result;
}
public static void Main()
{
BasicHttpBinding binding = new BasicHttpBinding();
binding.Name = "binding1";
binding.HostNameComparisonMode = HostNameComparisonMode.StrongWildcard;
binding.Security.Mode = BasicHttpSecurityMode.None;
Uri baseAddress = new Uri("http://localhost:8000/servicemodelsamples/service");
Uri address = new Uri("http://localhost:8000/servicemodelsamples/service/calc");
// Create a ServiceHost for the CalculatorService type and provide the base address.
ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService), baseAddress);
serviceHost.AddServiceEndpoint(typeof(ICalculator), binding, address);
// Open the ServiceHostBase to create listeners and start listening for messages.
serviceHost.Open();
// The service can now be accessed.
Console.WriteLine("The service is ready.");
Console.WriteLine("Press <ENTER> to terminate service.");
Console.WriteLine();
Console.ReadLine();
// Close the ServiceHostBase to shutdown the service.
serviceHost.Close();
}
}
<ServiceContract(Namespace:="http://UE.ServiceModel.Samples")> _
Public Interface ICalculator
<OperationContract()> _
Function Add(ByVal n1 As Double, ByVal n2 As Double) As Double
<OperationContract()> _
Function Subtract(ByVal n1 As Double, ByVal n2 As Double) As Double
<OperationContract()> _
Function Multiply(ByVal n1 As Double, ByVal n2 As Double) As Double
<OperationContract()> _
Function Divide(ByVal n1 As Double, ByVal n2 As Double) As Double
End Interface
' Service class which implements the service contract.
' Added code to write output to the console window
Public Class CalculatorService
Implements ICalculator
Public Function Add(ByVal n1 As Double, ByVal n2 As Double) As Double _
Implements ICalculator.Add
Dim result As Double = n1 + n2
Console.WriteLine("Received Add({0},{1})", n1, n2)
Console.WriteLine("Return: {0}", result)
Return result
End Function
Public Function Subtract(ByVal n1 As Double, ByVal n2 As Double) As Double _
Implements ICalculator.Subtract
Dim result As Double = n1 - n2
Console.WriteLine("Received Subtract({0},{1})", n1, n2)
Console.WriteLine("Return: {0}", result)
Return result
End Function
Public Function Multiply(ByVal n1 As Double, ByVal n2 As Double) As Double _
Implements ICalculator.Multiply
Dim result As Double = n1 * n2
Console.WriteLine("Received Multiply({0},{1})", n1, n2)
Console.WriteLine("Return: {0}", result)
Return result
End Function
Public Function Divide(ByVal n1 As Double, ByVal n2 As Double) As Double _
Implements ICalculator.Divide
Dim result As Double = n1 / n2
Console.WriteLine("Received Divide({0},{1})", n1, n2)
Console.WriteLine("Return: {0}", result)
Return result
End Function
Public Shared Sub Main()
Dim binding As BasicHttpBinding = New BasicHttpBinding()
binding.Name = "binding1"
binding.HostNameComparisonMode = HostNameComparisonMode.StrongWildcard
binding.Security.Mode = BasicHttpSecurityMode.None
Dim baseAddress As Uri = New Uri("http://localhost:8000/servicemodelsamples/service")
Dim address As Uri = New Uri("http://localhost:8000/servicemodelsamples/service/calc")
' Create a ServiceHost for the CalculatorService type and provide the base address.
Using serviceHost As ServiceHost = New ServiceHost(GetType(CalculatorService), baseAddress)
serviceHost.AddServiceEndpoint(GetType(ICalculator), binding, address)
' Open the ServiceHost to create listeners and start listening for messages.
serviceHost.Open()
' The service can now be accessed.
Console.WriteLine("The service is ready.")
Console.WriteLine("Press <ENTER> to terminate service.")
Console.WriteLine()
Console.ReadLine()
' Close the ServiceHost to shutdown the service.
serviceHost.Close()
End Using
End Sub
End Class
Comentários
O BasicHttpBinding usa HTTP como transporte para enviar mensagens SOAP 1.1. Um serviço pode usar essa associação para expor pontos de extremidade que estão em conformidade com o WS-I BP 1.1, como aqueles que os clientes ASMX acessam. Da mesma forma, um cliente pode usar o BasicHttpBinding para se comunicar com serviços que expõem pontos de extremidade que estão em conformidade com o WS-I BP 1.1, como serviços Web ASMX ou serviços do WCF (Windows Communication Foundation) configurados com o BasicHttpBinding.
A segurança é desativada por padrão, mas pode ser adicionada definindo o BasicHttpSecurityMode como um valor diferente de None no BasicHttpBinding(BasicHttpSecurityMode) construtor. Ela usa uma codificação de mensagem de "Texto" e uma codificação de texto UTF-8 por padrão.
Construtores
BasicHttpBinding() |
Inicializa uma nova instância da classe BasicHttpBinding. |
BasicHttpBinding(BasicHttpSecurityMode) |
Inicializa uma nova instância da classe BasicHttpBinding com um tipo de segurança especificado usado pela associação. |
BasicHttpBinding(String) |
Inicializa uma nova instância da classe BasicHttpBinding com uma associação especificada pelo seu nome de configuração. |
Propriedades
AllowCookies |
Obtém ou define um valor que indica se o cliente aceita cookies e propaga-os em solicitações futuras. |
AllowCookies |
Obtém ou define um valor que indica se o cliente aceita cookies e propaga-os em solicitações futuras. (Herdado de HttpBindingBase) |
BypassProxyOnLocal |
Obtém ou define um valor que indica se o servidor de proxy deve ser ignorado para endereços locais. |
BypassProxyOnLocal |
Obtém ou define um valor que indica se o servidor de proxy deve ser ignorado para endereços locais. (Herdado de HttpBindingBase) |
CloseTimeout |
Obtém ou define o intervalo concedido para que uma conexão seja fechada antes que o transporte gere uma exceção. (Herdado de Binding) |
EnableHttpCookieContainer |
Obsoleto.
Obtém ou define um valor que indica se o contêiner de cookies HTTP está habilitado. |
EnvelopeVersion |
Obtém a versão do SOAP usada para as mensagens processadas por essa associação. |
EnvelopeVersion |
Obtém a versão do SOAP usada para as mensagens processadas por essa associação. (Herdado de HttpBindingBase) |
HostNameComparisonMode |
Obtém ou define um valor que indica se o nome do host é usado para acessar o serviço ao corresponder ao URI. |
HostNameComparisonMode |
Obtém ou define um valor que indica se o nome do host é usado para acessar o serviço ao corresponder ao URI. (Herdado de HttpBindingBase) |
MaxBufferPoolSize |
Obtém ou define a quantidade máxima de memória, em bytes, alocada para uso do gerenciador dos buffers de mensagens que recebem mensagens do canal. |
MaxBufferPoolSize |
Obtém ou define a quantidade máxima de memória, em bytes, alocada para uso do gerenciador dos buffers de mensagens que recebem mensagens do canal. (Herdado de HttpBindingBase) |
MaxBufferSize |
Obtém ou define o tamanho máximo, em bytes, para um buffer que recebe mensagens do canal. |
MaxBufferSize |
Obtém ou define o tamanho máximo, em bytes, para um buffer que recebe mensagens do canal. (Herdado de HttpBindingBase) |
MaxReceivedMessageSize |
Obtém ou define o tamanho máximo, em bytes, para uma mensagem que pode ser recebida em um canal configurado com esta associação. |
MaxReceivedMessageSize |
Obtém ou define o tamanho máximo, em bytes, para uma mensagem que pode ser recebida em um canal configurado com esta associação. (Herdado de HttpBindingBase) |
MessageEncoding |
Obtém ou define se MTOM ou Text é usado para codificar mensagens SOAP. |
MessageVersion |
Obtém a versão de mensagem usada por clientes e serviços configurados com a associação. (Herdado de Binding) |
Name |
Obtém ou define o nome da associação. (Herdado de Binding) |
Namespace |
Obtém ou define o namespace de XML da associação. (Herdado de Binding) |
OpenTimeout |
Obtém ou define o intervalo concedido para que uma conexão seja aberta antes que o transporte gere uma exceção. (Herdado de Binding) |
ProxyAddress |
Obtém ou define o endereço do URI do proxy HTTP. |
ProxyAddress |
Obtém ou define o endereço do URI do proxy HTTP. (Herdado de HttpBindingBase) |
ReaderQuotas |
Obtém ou define as restrições na complexidade das mensagens SOAP que podem ser processadas por pontos de extremidade configurados com essa associação. |
ReaderQuotas |
Obtém ou define as restrições na complexidade das mensagens SOAP que podem ser processadas por pontos de extremidade configurados com essa associação. (Herdado de HttpBindingBase) |
ReceiveTimeout |
Obtém ou define o intervalo de tempo que uma conexão pode permanecer inativa, durante o qual nenhuma mensagem de aplicativo é recebida, antes de seu descarte. (Herdado de Binding) |
Scheme |
Obtém o esquema de transporte de URI para os canais e os ouvintes que estão configurados com essa associação. |
Scheme |
Obtém o esquema de transporte de URI para os canais e os ouvintes que estão configurados com essa associação. (Herdado de HttpBindingBase) |
Security |
Obtém o tipo de segurança usado com esta associação. |
SendTimeout |
Obtém ou define o intervalo concedido para uma operação ser concluída antes de o transporte gerar uma exceção. (Herdado de Binding) |
TextEncoding |
Obtém ou define a codificação de caracteres usada para o texto da mensagem. |
TextEncoding |
Obtém ou define a codificação de caracteres usada para o texto da mensagem. (Herdado de HttpBindingBase) |
TransferMode |
Obtém ou define um valor que indica se as mensagens são enviadas em buffer ou transmitidas. |
TransferMode |
Obtém ou define um valor que indica se as mensagens são enviadas em buffer ou transmitidas. (Herdado de HttpBindingBase) |
UseDefaultWebProxy |
Obtém ou define um valor que indica se o proxy HTTP configurado automaticamente do sistema deve ser usado, se disponível. |
UseDefaultWebProxy |
Obtém ou define um valor que indica se o proxy HTTP configurado automaticamente do sistema deve ser usado, se disponível. (Herdado de HttpBindingBase) |
Métodos
BuildChannelFactory<TChannel>(BindingParameterCollection) |
Cria a pilha de fábricas de canais no cliente que cria um tipo de canal especificado e que satisfaz os recursos especificados por uma coleção de parâmetros de associação. |
BuildChannelFactory<TChannel>(BindingParameterCollection) |
Cria a pilha de fábricas de canais no cliente que cria um tipo de canal especificado e que satisfaz os recursos especificados por uma coleção de parâmetros de associação. (Herdado de Binding) |
BuildChannelFactory<TChannel>(Object[]) |
Cria a pilha de fábricas de canais no cliente que cria um tipo de canal especificado e que satisfaz os recursos especificados por uma matriz de objetos. (Herdado de Binding) |
BuildChannelListener<TChannel>(BindingParameterCollection) |
Cria o ouvinte de canais no serviço que aceita um tipo de canal especificado e que satisfaz os recursos especificados por uma coleção de parâmetros de associação. (Herdado de Binding) |
BuildChannelListener<TChannel>(Object[]) |
Cria o ouvinte de canais no serviço que aceita um tipo de canal especificado e que satisfaz os recursos especificados. (Herdado de Binding) |
BuildChannelListener<TChannel>(Uri, BindingParameterCollection) |
Cria o ouvinte de canais no serviço que aceita um tipo de canal especificado e que satisfaz os recursos especificados. (Herdado de Binding) |
BuildChannelListener<TChannel>(Uri, Object[]) |
Cria o ouvinte de canais no serviço que aceita um tipo de canal especificado e que satisfaz os recursos especificados. (Herdado de Binding) |
BuildChannelListener<TChannel>(Uri, String, BindingParameterCollection) |
Cria o ouvinte de canais no serviço que aceita um tipo de canal especificado e que satisfaz os recursos especificados. (Herdado de Binding) |
BuildChannelListener<TChannel>(Uri, String, ListenUriMode, BindingParameterCollection) |
Cria o ouvinte de canais no serviço que aceita um tipo de canal especificado e que satisfaz os recursos especificados. (Herdado de Binding) |
BuildChannelListener<TChannel>(Uri, String, ListenUriMode, Object[]) |
Cria o ouvinte de canais no serviço que aceita um tipo de canal especificado e que satisfaz os recursos especificados. (Herdado de Binding) |
BuildChannelListener<TChannel>(Uri, String, Object[]) |
Cria o ouvinte de canais no serviço que aceita um tipo de canal especificado e que satisfaz os recursos especificados. (Herdado de Binding) |
CanBuildChannelFactory<TChannel>(BindingParameterCollection) |
Retorna um valor que indica se a associação atual pode criar uma pilha de fábricas de canais no cliente que satisfaz a coleção de parâmetros de associação especificados. (Herdado de Binding) |
CanBuildChannelFactory<TChannel>(Object[]) |
Retorna um valor que indica se a associação atual pode criar uma pilha de fábricas de canais no cliente que satisfaz os requisitos especificados por uma matriz de objetos. (Herdado de Binding) |
CanBuildChannelListener<TChannel>(BindingParameterCollection) |
Retorna um valor que indica se a associação atual pode criar uma pilha de ouvintes de canais no serviço que satisfaça a coleção de parâmetros de associação especificados. (Herdado de Binding) |
CanBuildChannelListener<TChannel>(Object[]) |
Retorna um valor que indica se a associação atual pode criar uma pilha de ouvintes de canais no serviço que satisfaça os critérios especificados em uma matriz de objetos. (Herdado de Binding) |
CreateBindingElements() |
Cria e retorna uma coleção ordenada de elementos de associação contidos na associação atual. |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetProperty<T>(BindingParameterCollection) |
Retorna um objeto tipado solicitado, se presente, da camada apropriada na pilha de associação. (Herdado de Binding) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
ShouldSerializeEnableHttpCookieContainer() |
Indica se o contêiner de cookies http deve habilitar a serialização. |
ShouldSerializeName() |
Retorna se o nome da associação deve ser serializado. (Herdado de Binding) |
ShouldSerializeNamespace() |
Retorna se o namespace da associação deve ser serializado. (Herdado de Binding) |
ShouldSerializeReaderQuotas() |
Retorna se os valores de restrição impostos à complexidade da estrutura de mensagem SOAP devem ser serializados. |
ShouldSerializeReaderQuotas() |
Retorna se os valores de restrição impostos à complexidade da estrutura de mensagem SOAP devem ser serializados. (Herdado de HttpBindingBase) |
ShouldSerializeSecurity() |
Retornado se as configurações de segurança devem ser serializadas com base em se a serialização já ocorre, por exemplo, no nível de mensagem ou de transporte. |
ShouldSerializeTextEncoding() |
Retorna se as configurações para codificação de texto devem ser serializadas. |
ShouldSerializeTextEncoding() |
Retorna se as configurações para codificação de texto devem ser serializadas. (Herdado de HttpBindingBase) |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
Implantações explícitas de interface
IBindingRuntimePreferences.ReceiveSynchronously |
Obtém um valor que indica se as solicitações de entrada são tratadas de forma síncrona ou assíncrona. |
IBindingRuntimePreferences.ReceiveSynchronously |
Obtém um valor que indica se as solicitações de entrada são tratadas de forma síncrona ou assíncrona. (Herdado de HttpBindingBase) |