NetworkStream.Socket Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém o Socket subjacente.
public:
property System::Net::Sockets::Socket ^ Socket { System::Net::Sockets::Socket ^ get(); };
protected:
property System::Net::Sockets::Socket ^ Socket { System::Net::Sockets::Socket ^ get(); };
public System.Net.Sockets.Socket Socket { get; }
protected System.Net.Sockets.Socket Socket { get; }
member this.Socket : System.Net.Sockets.Socket
Public ReadOnly Property Socket As Socket
Protected ReadOnly Property Socket As Socket
Valor da propriedade
Um Socket que representa a conexão de rede subjacente.
Exemplos
O exemplo de código a seguir recupera o subjacente Socket para verificar uma conexão ativa.
#using <System.dll>
using namespace System;
using namespace System::Net;
using namespace System::Net::Sockets;
ref class MyNetworkStream_Sub_Class: public NetworkStream
{
public:
MyNetworkStream_Sub_Class( System::Net::Sockets::Socket^ socket, bool ownsSocket )
: NetworkStream( socket, ownsSocket )
{
}
property bool IsConnected
{
// You can use the Socket method to examine the underlying Socket.
bool get()
{
return this->Socket->Connected;
}
}
property bool CanCommunicate
{
bool get()
{
if ( !this->Readable | !this->Writeable )
{
return false;
}
else
{
return true;
}
}
}
using System;
using System.Net;
using System.Net.Sockets;
public class MyNetworkStream_Sub_Class : NetworkStream
{
public MyNetworkStream_Sub_Class(Socket socket, bool ownsSocket) :
base(socket, ownsSocket)
{
}
// You can use the Socket method to examine the underlying Socket.
public bool IsConnected
{
get
{
return this.Socket.Connected;
}
}
public bool CanCommunicate
{
get
{
if (!this.Readable | !this.Writeable)
{
return false;
}
else
{
return true;
}
}
}
Public Class MyNetworkStream_Sub_Class
Inherits NetworkStream
Public Sub New(socket As Socket, ownsSocket As Boolean)
MyBase.New(socket, ownsSocket)
End Sub
' Suppose you wanted a property for determining if Socket is connected. You can use
' the protected method 'Socket' to return underlying Socket.
Public ReadOnly Property IsConnected() As Boolean
Get
Return Me.Socket.Connected
End Get
End Property
' You could also use public NetworkStream methods 'CanRead' and 'CanWrite'.
Public ReadOnly Property CanCommunicate() As Boolean
Get
If Not Me.Readable Or Not Me.Writeable Then
Return False
Else
Return True
End If
End Get
End Property
Public Shared Sub DoSomethingSignificant()
End Sub
' Do something significant in here
Comentários
As classes derivadas de NetworkStream podem usar essa propriedade para obter o subjacente Socket. Use o subjacente Socket retornado da Socket propriedade se você precisar de acesso além do que NetworkStream fornece.
Observação
Essa propriedade só pode ser acessada por meio dessa classe ou de uma classe derivada.