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


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

Комментарии

Первые 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()

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

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