在.NET 3.5上,您可以在服务代码中执行此操作以查找调用方的IP地址:
public void YourServiceMethod(string value)
{
OperationContext context = OperationContext.Current;
MessageProperties messageProperties = context.IncomingMessageProperties;
RemoteEndpointMessageProperty endpointProperty =
messageProperties[RemoteEndpointMessageProperty.Name]
as RemoteEndpointMessageProperty;
string clientIPAddress = endpointProperty.Address;
int clientPort = endpointProperty.Port;
}
最初在凯文·纳耶里的
blog post
.
马克