Socket.Bind(EndPoint) Método

Definição

Associa um Socket a um ponto de extremidade local.

public void Bind (System.Net.EndPoint localEP);

Parâmetros

localEP
EndPoint

O local EndPoint para associar ao Socket.

Exceções

localEP é null.

Ocorreu um erro ao tentar acessar o soquete.

Um chamador mais alto na pilha de chamadas não tem permissão para a operação solicitada.

Exemplos

O exemplo de código a seguir associa um Socket usando o ponto de extremidade local especificado.

try {
    aSocket.Bind(anEndPoint);
}
catch (Exception e) {
    Console.WriteLine("Winsock error: " + e.ToString());
}

Comentários

Use o Bind método se precisar usar um ponto de extremidade local específico. Você deve chamar Bind antes de chamar o Listen método . Você não precisa chamar Bind antes de usar o Connect método , a menos que precise usar um ponto de extremidade local específico. Você pode usar o Bind método em protocolos orientados a conexão e sem conexão.

Antes de chamar Bind, primeiro você deve criar o local IPEndPoint do qual pretende comunicar dados. Se você não se importar com qual endereço local é atribuído, poderá criar um IPEndPoint usando IPAddress.Any como o parâmetro de endereço e o provedor de serviços subjacente atribuirá o endereço de rede mais apropriado. Isso pode ajudar a simplificar seu aplicativo se você tiver vários adaptadores de rede. Se você não se importar com qual porta local é usada, poderá criar um IPEndPoint usando 0 para o número da porta. Nesse caso, o provedor de serviços atribuirá um número de porta disponível entre 1024 e 5000.

Se você usar a abordagem acima, poderá descobrir qual endereço de rede local e o número da porta foram atribuídos chamando o LocalEndPoint. Se você estiver usando um protocolo orientado a conexão, LocalEndPoint não retornará o endereço de rede atribuído localmente até que você tenha feito uma chamada para o Connect método ou EndConnect . Se você estiver usando um protocolo sem conexão, não terá acesso a essas informações até concluir um envio ou recebimento.

Se um soquete UDP quiser receber informações de interface sobre pacotes recebidos, o SetSocketOption método deverá ser chamado explicitamente com a opção de soquete definida PacketInformation como imediatamente após chamar o Bind método .

Nota

Se você pretende receber datagramas multicast, deve chamar o Bind método com um número de porta multicast.

Nota

Você deve chamar o Bind método se pretende receber datagramas sem conexão usando o ReceiveFrom método .

Nota

Se você receber um SocketException ao chamar o Bind método , use a SocketException.ErrorCode propriedade para obter o código de erro específico. Depois de obter esse código, consulte a documentação do código de erro da API do Windows Sockets versão 2 para obter uma descrição detalhada do erro.

Nota

Esse membro emite o rastreamento de informações quando você ativa o rastreamento de rede em seu aplicativo. Para obter mais informações, consulte Rastreamento de rede em .NET Framework.

Aplica-se a

Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Confira também