我想创建一个新的网络.tcp://localhost:x/ServiceWCF服务调用的端点,具有动态分配的新开放TCP端口.

我知道,当我打开与给定服务器的连接时,TcpClient将分配一个新的客户端端口.

有没有一种简单的方法可以找到下一个打开的TCP端口.网

我需要实际的数字,这样我就可以构建上面的字符串.0不起作用,因为我需要将该字符串传递给另一个进程,这样我就可以调用该新通道.

推荐答案

以下是我想要的:

static int FreeTcpPort()
{
  TcpListener l = new TcpListener(IPAddress.Loopback, 0);
  l.Start();
  int port = ((IPEndPoint)l.LocalEndpoint).Port;
  l.Stop();
  return port;
}

.net相关问答推荐

.NET MAUI ListView - ObservableCollection - 在异步方法期间不更新

保存时不保留 XML 格式

F#:跨度、提升和底部类型(或缺乏)

如何在 FtpWebRequest 之前判断 FTP 上是否存在文件

为什么这两个比较有不同的结果?

为什么 .NET 内部 Hashtable 中有一个 Thread.Sleep(1)?

(C# 7.2)私有保护修饰符的用例是什么?

.Net 中的 Int128?

如何判断一个类型是否是简单类型?即持有一个单一的价值

C# 中 try/finally 的开销?

如何让 .NET 的 Path.Combine 将正斜杠转换为反斜杠?

Java 和 .NET 技术/框架的类似物

在 ToString() 之前判断 null

.NET 如何判断路径是否是文件而不是目录?

在 C# 中与块等效?

从 C# 中的接口继承 XML 注释

ReaderWriterLockSlim 什么时候比简单的锁更好?

如何将 .NET 应用程序编译为本机代码?

使用没有catch块的try-finally块

为什么 IList 不支持 AddRange