Compartilhar via


SocketAddress Classe

Definição

Armazena informações serializadas de classes derivadas de EndPoint.

public ref class SocketAddress
public ref class SocketAddress : IEquatable<System::Net::SocketAddress ^>
public class SocketAddress
public class SocketAddress : IEquatable<System.Net.SocketAddress>
type SocketAddress = class
type SocketAddress = class
    interface IEquatable<SocketAddress>
Public Class SocketAddress
Public Class SocketAddress
Implements IEquatable(Of SocketAddress)
Herança
SocketAddress
Implementações

Exemplos

O exemplo a seguir demonstra como usar SocketAddress para serializar uma instância da EndPoint classe . Após a serialização, o buffer de bytes subjacente do SocketAddress contém todas as informações de IPEndPoint estado.

//Creates an IpEndPoint.
IPAddress^ ipAddress = Dns::Resolve( "www.contoso.com" )->AddressList[ 0 ];
IPEndPoint^ ipLocalEndPoint = gcnew IPEndPoint( ipAddress,11000 );

//Serializes the IPEndPoint.
SocketAddress^ socketAddress = ipLocalEndPoint->Serialize();

//Verifies that ipLocalEndPoint is now serialized by printing its contents.
Console::WriteLine( "Contents of the socketAddress are: {0}", socketAddress );
//Checks the Family property.
Console::WriteLine( "The address family of the socketAddress is: {0}", socketAddress->Family );
//Checks the underlying buffer size.
Console::WriteLine( "The size of the underlying buffer is: {0}", socketAddress->Size );

//Creates an IpEndPoint.
IPAddress ipAddress = Dns.Resolve("www.contoso.com").AddressList[0];
IPEndPoint ipLocalEndPoint = new IPEndPoint(ipAddress, 11000);

//Serializes the IPEndPoint.
SocketAddress socketAddress = ipLocalEndPoint.Serialize();

//Verifies that ipLocalEndPoint is now serialized by printing its contents.
Console.WriteLine("Contents of the socketAddress are: " + socketAddress.ToString());
//Checks the Family property.
Console.WriteLine("The address family of the socketAddress is: " + socketAddress.Family.ToString());
//Checks the underlying buffer size.
Console.WriteLine("The size of the underlying buffer is: " + socketAddress.Size.ToString());
   'Creates an IpEndPoint.
   Dim ipAddress As IPAddress = Dns.Resolve("www.contoso.com").AddressList(0)
   Dim ipLocalEndPoint As New IPEndPoint(ipAddress, 11000)
   
   'Serializes the IPEndPoint. 
   Dim socketAddress As SocketAddress = ipLocalEndPoint.Serialize()
   
   'Verifies that ipLocalEndPoint is now serialized by printing its contents.
   Console.WriteLine(("Contents of socketAddress are: " + socketAddress.ToString()))
   'Checks the Family property.
   Console.WriteLine(("The address family of socketAddress is: " + socketAddress.Family.ToString()))
   'Checks the underlying buffer size.
   Console.WriteLine(("The size of the underlying buffer is: " + socketAddress.Size.ToString()))
End Sub

Comentários

Os dois primeiros bytes do buffer subjacente são reservados para o AddressFamily valor enumerado. Quando o SocketAddress é usado para armazenar um serializado IPEndPoint, o terceiro e o quarto bytes são usados para armazenar informações de número de porta. Os próximos bytes são usados para armazenar o endereço IP. Você pode acessar qualquer informação dentro desse buffer de bytes subjacente referindo-se à sua posição de índice; o buffer de bytes usa indexação baseada em zero. Você também pode usar as Family propriedades e Size para obter o AddressFamily valor e o tamanho do buffer, respectivamente. Para exibir qualquer uma dessas informações como uma cadeia de caracteres, use o ToString método .

Construtores

SocketAddress(AddressFamily)

Cria uma nova instância da classe SocketAddress para a família de endereços determinada.

SocketAddress(AddressFamily, Int32)

Cria uma nova instância da classe SocketAddress usando a família de endereços especificada e o tamanho do buffer.

Propriedades

Buffer

Obtém a memória subjacente que pode ser passada para chamadas nativas do sistema operacional.

Family

Obtém o valor enumerado AddressFamily do SocketAddress atual.

Item[Int32]

Obtém ou define o elemento de índice especificado no buffer subjacente.

Size

Obtém o tamanho do buffer subjacente do SocketAddress.

Métodos

Equals(Object)

Determina se o Object especificado é igual ao Object atual.

Equals(SocketAddress)

Indica se o objeto atual é igual a outro objeto do mesmo tipo.

GetHashCode()

Atua como uma função de hash para um tipo específico, adequada para uso em algoritmos de hash e estruturas de dados como uma tabela de hash.

GetMaximumAddressSize(AddressFamily)

Obtém o tamanho máximo do buffer necessário para o determinado AddressFamily.

GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna informações sobre o endereço do soquete.

Aplica-se a