Прочитать на английском

Поделиться через


SocketAddress Класс

Определение

Сохраняет сведения о сериализации для производных классов EndPoint.

C#
public class SocketAddress
C#
public class SocketAddress : IEquatable<System.Net.SocketAddress>
Наследование
SocketAddress
Реализации

Примеры

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

C#

//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());

Комментарии

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

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

SocketAddress(AddressFamily)

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

SocketAddress(AddressFamily, Int32)

Создает новый экземпляр класса 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()

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

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

Продукт Версии
.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