从C#客户端(System.ServiceModel.ClientBase<>的实例)调用WCF Web服务时,如何获取我连接的服务器的IP地址?
上下文:我们为某些WCF服务设置了一个Web场,我需要知道发生异常时我连接的是哪个特定服务器。
答案 0 :(得分:4)
您可以将此添加到您的捕获中:
IPHostEntry heserver = Dns.GetHostEntry(Dns.GetHostName());
IPAddress curAdd = heserver.AddressList[0];
curAdd.ToString();
答案 1 :(得分:1)
您的负载均衡器可能是隐藏了您的特定Web服务器。
通常的策略是记录每台服务器的错误,并使用某种日志聚合器来监控所有服务器。
如果您的客户端代码确实需要知道特定服务器,请考虑将该信息作为异常的一部分返回。毕竟,服务器知道它自己的身份。