Sdílet prostřednictvím


SocketAddress Třída

Definice

Ukládá serializované informace z EndPoint odvozených tříd.

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)
Dědičnost
SocketAddress
Implementuje

Příklady

Následující příklad ukazuje, jak použít SocketAddress k serializaci instance EndPoint třídy . Po serializaci základní vyrovnávací paměť SocketAddress bajtů obsahuje všechny informace o IPEndPoint stavu.

//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

Poznámky

První 2 bajty podkladové vyrovnávací paměti jsou vyhrazeny pro AddressFamily výčtovou hodnotu. SocketAddress Pokud se používá k uložení serializované IPEndPoint, třetí a čtvrtý bajt slouží k uložení informací o čísle portu. Další bajty se použijí k uložení IP adresy. Přístup k jakýmkoli informacím v této základní vyrovnávací paměti bajtů můžete získat odkazem na jeho pozici indexu; bajtová vyrovnávací paměť používá indexování založené na nule. K získání AddressFamily hodnoty a velikosti vyrovnávací paměti můžete použít také Family vlastnosti a Size . Pokud chcete některou z těchto informací zobrazit jako řetězec, použijte metodu ToString .

Konstruktory

SocketAddress(AddressFamily)

Vytvoří novou instanci SocketAddress třídy pro danou řadu adres.

SocketAddress(AddressFamily, Int32)

Vytvoří novou instanci SocketAddress třídy pomocí zadané řady adres a velikosti vyrovnávací paměti.

Vlastnosti

Buffer

Získá základní paměť, která může být předána nativní volání operačního systému.

Family

AddressFamily Získá hodnotu výčtu aktuálního SocketAddressobjektu .

Item[Int32]

Získá nebo nastaví zadaný prvek indexu v podkladové vyrovnávací paměti.

Size

Získá velikost základní vyrovnávací paměti .SocketAddress

Metody

Equals(Object)

Určuje, zda se zadaná Object hodnota rovná aktuální Objecthodnotě .

Equals(SocketAddress)

Určuje, zda je aktuální objekt roven jinému objektu stejného typu.

GetHashCode()

Slouží jako hashovací funkce pro konkrétní typ, která je vhodná pro použití v algoritmech hash a datových strukturách, jako je hashovací tabulka.

GetMaximumAddressSize(AddressFamily)

Získá maximální požadovanou velikost vyrovnávací paměti pro danou AddressFamily.

GetType()

Type Získá z aktuální instance.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
ToString()

Vrátí informace o adrese soketu.

Platí pro