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) |
Определяет, равен ли указанный параметр |
| Equals(SocketAddress) |
Указывает, равен ли текущий объект другому объекту того же типа. |
| GetHashCode() |
Служит хэш-функцией для определенного типа, подходящей для использования в хэш-алгоритмах и структурах данных, таких как хэш-таблица. |
| GetMaximumAddressSize(AddressFamily) |
Возвращает максимальный требуемый размер буфера для заданного.AddressFamily |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| ToString() |
Возвращает сведения об адресе сокета. |