类
HttpPolicyDownloaderProtocol | 下载 Socket 类的实例将使用的策略文件。 |
IPv6MulticastOption | 包含用于加入 IPv6 多路广播组的选项值。 |
LingerOption | 指定在调用 Socket 或 Close() 方法之后,如果仍有数据要发送,Close() 是否保持连接以及保持多长时间。 |
MulticastOption | 包含用于联接和丢弃多路广播组的 IPAddress 值。 |
NetworkStream | 为网络访问提供数据的基础流。 |
SendPacketsElement | 表示 SendPacketsElement 数组中的一个元素。 |
Socket | 实现 Berkeley 套接字接口。(rj45接口) |
SocketAsyncEventArgs | 表示异步套接字操作。 |
SocketException | 发生套接字错误时引发的异常。 |
SocketPolicy | 表示策略文件实例。 |
SocketTaskExtensions | 此类包含 Socket 类的扩展方法。 |
TcpClient | 为 TCP 网络服务提供客户端连接。(客户端) |
TcpListener | 侦听来自 TCP 网络客户端的连接。(服务器) |
UdpAnySourceMulticastClient | 从任意源接收多播流量的客户端接收器,亦称为任意源多播 (ASM) 或 Internet 标准多播 (ISM)。 |
UdpClient | 提供用户数据报协议 (UDP) 网络服务。 |
UdpSingleSourceMulticastClient | 一个从单一源接收多播流量的客户端,亦称为源特定多播 (SSM)。 |
结构
枚举
AddressFamily | 指定 Socket 类的实例可以使用的寻址方案。 |
IOControlCode | 指定 IOControl(Int32, Byte[], Byte[]) 方法支持的 IO 控制代码。 |
IPProtectionLevel | 一个可用于将 IPv6 套接字限制为一个指定范围的值,例如限制为具有相同的链接本地或站点本地前缀的地址。 |
ProtocolFamily | 指定 Socket 类的实例可以使用的协议类型。 |
ProtocolType | 指定 Socket 类支持的协议。 |
SelectMode | 为 Poll(Int32, SelectMode) 方法定义轮询模式。 |
SocketAsyncOperation | 最近使用此上下文对象执行的异步套接字操作的类型。 |
SocketClientAccessPolicyProtocol | 指定下载客户端访问策略文件的方法。 |
SocketError | 定义 Socket 类的错误代码。 |
SocketFlags | 指定套接字发送和接收行为。 |
SocketInformationOptions | 描述 Socket 的状态。 |
SocketOptionLevel | 为 SetSocketOption(SocketOptionLevel, SocketOptionName, Int32) 和 GetSocketOption(SocketOptionLevel, SocketOptionName) 方法定义套接字选项级别。 |
SocketOptionName | 定义配置选项名称。 |
SocketShutdown | 定义 Shutdown(SocketShutdown) 方法使用的常量。 |
SocketType | 指定 Socket 类的实例表示的套接字类型。 |
TransmitFileOptions | TransmitFileOptions 枚举定义文件传输请求中使用的值。 |
委托
SecurityCriticalAction | 表示安全关键操作。 |
Socket:
构造函数
Socket(AddressFamily, SocketType, ProtocolType) | 使用指定的地址族、套接字类型和协议初始化 Socket 类的新实例。 |
Socket(SocketInformation) | 使用 Socket 返回的指定的值初始化 DuplicateAndClose(Int32) 类的新实例。 |
Socket(SocketType, ProtocolType) | 使用指定的地址族、套接字类型和协议初始化 Socket 类的新实例。 如果操作系统支持 IPv6,此构造函数将创建双模式套接字;否则,它将创建 IPv4 套接字。 |
属性
AddressFamily | 获取 Socket 的地址族。 |
Available | 获取已经从网络接收且可供读取的数据量。 |
Blocking | 获取或设置一个值,该值指示 Socket 是否处于阻止模式。 |
Connected | |
DontFragment | 获取或设置一个值,该值指定 Socket 是否允许将 Internet 协议 (IP) 数据报分段。 |
DualMode | 获取或设置一个值,该值指定是用于 IPv4 和 IPv6 的 Socket 双模式套接字。 |
EnableBroadcast | |
ExclusiveAddressUse | |
Handle | 获取 Socket 的操作系统句柄。 |
IsBound | 获取一个值,该值指示 Socket 是否绑定到特定本地端口。 |
LingerState | 获取或设置一个值,该值指定 Socket 在尝试发送所有挂起数据时是否延迟关闭套接字。 |
LocalEndPoint | 获取本地终结点。 |
MulticastLoopback | 获取或设置一个值,该值指定传出的多路广播数据包是否传递到发送应用程序。 |
NoDelay | |
OSSupportsIPv4 | 指示基础操作系统和网络适配器是否支持 Internet 协议第 4 版 (IPv4)。 |
OSSupportsIPv6 | 指示基础操作系统和网络适配器是否支持 Internet 协议第 6 版 (IPv6)。 |
ProtocolType | 获取 Socket 的协议类型。 |
ReceiveBufferSize | 获取或设置一个值,它指定 Socket 接收缓冲区的大小。 |
ReceiveTimeout | 获取或设置一个值,该值指定之后同步 Receive 调用将超时的时间长度。 |
RemoteEndPoint | 获取远程终结点。 |
SendBufferSize | 获取或设置一个值,该值指定 Socket 发送缓冲区的大小。 |
SendTimeout | 获取或设置一个值,该值指定之后同步 Send 调用将超时的时间长度。 |
SocketType | 获取 Socket 的类型。 |
SupportsIPv4 | 已过时。 获取一个值,该值指示在当前主机上 IPv4 支持是否可用并且已启用。 |
SupportsIPv6 | 已过时。 获取一个值,该值指示 Framework 对某些已过时的 Dns 成员是否支持 IPv6。 |
Ttl | 获取或设置一个值,指定 Socket 发送的 Internet 协议 (IP) 数据包的生存时间 (TTL) 值。 |
UseOnlyOverlappedIO | 获取或设置一个值,该值指定套接字是否只应使用重叠 I/O 模式。 在 .NET 5+ ((包括 .NET Core 版本) )上,该值始终 |
方法
扩展方法
AcceptAsync(Socket) | 执行异步操作,接受套接字上的传入连接尝试。 |
AcceptAsync(Socket, Socket) | 执行异步操作,接受套接字上的传入连接尝试。 |
ConnectAsync(Socket, EndPoint) | 与远程主机建立连接。 |
ConnectAsync(Socket, IPAddress, Int32) | 与远程主机建立连接。 主机由 IP 地址和端口号指定。 |
ConnectAsync(Socket, IPAddress[], Int32) | 与远程主机建立连接。 主机由 IP 地址数组和端口号指定。 |
ConnectAsync(Socket, String, Int32) | 与远程主机建立连接。 主机由主机名和端口号指定。 |
ReceiveAsync(Socket, ArraySegment<Byte>, SocketFlags) | 接收连接的套接字发出的数据。 |
ReceiveAsync(Socket, IList<ArraySegment<Byte>>, SocketFlags) | 接收连接的套接字发出的数据。 |
ReceiveFromAsync(Socket, ArraySegment<Byte>, SocketFlags, EndPoint) | 接收来自指定网络设备的数据。 |
ReceiveMessageFromAsync(Socket, ArraySegment<Byte>, SocketFlags, EndPoint) | 使用指定的 SocketFlags 将指定字节数的数据接收到指定的数据缓冲区位置,并存储终结点和数据包信息。 |
SendAsync(Socket, ArraySegment<Byte>, SocketFlags) | 将数据发送到连接的套接字。 |
SendAsync(Socket, IList<ArraySegment<Byte>>, SocketFlags) | 将数据发送到连接的套接字。 |
SendToAsync(Socket, ArraySegment<Byte>, SocketFlags, EndPoint) | 以异步方式将数据发送到特定远程主机。 |
建议的内容
-
Socket.Send 方法 (System.Net.Sockets)
将数据发送到连接的 Socket。
-
Socket.Connect 方法 (System.Net.Sockets)
与远程主机建立连接。
-
Socket.Receive 方法 (System.Net.Sockets)
接收来自绑定的 Socket 的数据。
-
TcpClient.GetStream 方法 (System.Net.Sockets)
返回用于发送和接收数据的 NetworkStream。
-
UdpClient.Receive(IPEndPoint) 方法 (System.Net.Sockets)
返回由远程主机发送的 UDP 数据报。
-
TcpListener 类 (System.Net.Sockets)
侦听来自 TCP 网络客户端的连接。
-
NetworkStream.Write 方法 (System.Net.Sockets)
从只读字节范围向 NetworkStream 写入数据。