为什么没有TcpClient.Connect的无参数实现?
本文关键字:参数 实现 Connect TcpClient 为什么 | 更新日期: 2023-09-27 18:18:57
考虑以下内容:
IPEndPoint ep = new IPEndPoint(ip, 0);
TcpClient tcpClient = new TcpClient (ep);
tcpClient.Connect(ep);
为什么我必须告诉tcpClient
首先绑定到ep
,然后连接到ep
。对比Connect()
和已经绑定的终点,我看起来很奇怪。
接受IPEndpoint
的构造函数用于绑定本地端点地址。Connect
意味着传递一个远程端点地址。这两件事之一是相互矛盾的。
初始化
TcpClient
类的新实例,并将其绑定到指定的本地端点。
Connect
:
使用指定的远程网络端点将客户端连接到远程TCP主机。
但是因为我们不知道ep
是本地端点还是远程端点,所以我不能告诉你哪个是错误的。我猜在本地端点,因为你已经指定了0
,在这种情况下,你需要为你的Connect
调用识别一个不同的端点-你想连接到什么?
不确定这里是否遗漏了什么,但是有一个默认构造函数。
http://msdn.microsoft.com/en-us/library/aa329755 (v = vs.71) . aspx