1

我目前有一个netTcpBinding正在侦听端口 8000 的端点。

我已经app.config像这样在文件中配置了基地址

net.tcp://*:8000/TestProject/Service

这按预期工作,服务侦听端口 8000。

我的问题是该服务将部署在第三方机器上,我担心端口冲突(并且System.Net.SocketException在尝试打开已被另一个应用程序使用的端口时遇到问题)。

可以处理异常并使用IPGlobalProperties在代码中查找可用端口以使用空闲端口重新创建基地址,但我希望有一种方法可以指示 WCF 在app.config设置中使用动态端口。

客户端连接不需要知道预定义的端口号,因为它们使用 WS-Discovery 来查找服务器端点。

4

1 回答 1

1

您可以将其添加到您的 app.config 中。

<appSettings>
   <add key="Port" value="8000" />
</appSettings>

并在代码中读出

string port = ConfigurationManager.AppSettings["Port"];

读取端口后,您必须创建 url。

于 2013-07-27T06:58:15.457 回答