SocketAddress Класс

Определение

Хранит сериализованные сведения из 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)
Наследование
SocketAddress
Реализации

Примеры

В следующем примере показано, как SocketAddress сериализовать экземпляр EndPoint класса. После сериализации базовый буфер байтов SocketAddress содержит все IPEndPoint сведения о состоянии.


//Creates an IpEndPoint.
IPAddress ipAddress = Dns.GetHostEntry("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

Комментарии

Первые 2 байта базового буфера зарезервированы для AddressFamily перечисленного значения. Если используется SocketAddress для хранения сериализованного IPEndPoint, третий и четвертый байты используются для хранения сведений о номере порта. Следующие байты используются для хранения IP-адреса. Доступ к любой информации в этом базовом буфере байтов можно получить, ссылаясь на ее позицию индекса; буфер байтов использует индексирование на основе нуля. Вы также можете использовать Family свойства и Size значения для получения AddressFamily значения и размера буфера соответственно. Чтобы просмотреть любую из этих сведений в виде строки, используйте ToString этот метод.

Конструкторы

Имя Описание
SocketAddress(AddressFamily, Int32)

Создает новый экземпляр класса с использованием указанного SocketAddress семейства адресов и размера буфера.

SocketAddress(AddressFamily)

Создает новый экземпляр класса для заданного SocketAddress семейства адресов.

Свойства

Имя Описание
Buffer

Получает базовую память, которую можно передать в собственные вызовы ОС.

Family

AddressFamily Возвращает перечисленное значение текущегоSocketAddress.

Item[Int32]

Возвращает или задает указанный элемент индекса в базовом буфере.

Size

Возвращает базовый размер буфера SocketAddress.

Методы

Имя Описание
Equals(Object)

Определяет, равен ли указанный параметр Object текущему Object.

Equals(SocketAddress)

Указывает, равен ли текущий объект другому объекту того же типа.

GetHashCode()

Служит хэш-функцией для определенного типа, подходящей для использования в хэш-алгоритмах и структурах данных, таких как хэш-таблица.

GetMaximumAddressSize(AddressFamily)

Возвращает максимальный требуемый размер буфера для заданного.AddressFamily

GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
ToString()

Возвращает сведения об адресе сокета.

Применяется к