WCF 如何获得NET.TCP客户端地址、端口?

富莱工作室 2007-12-26 04:05:38
WCF服务端怎么取得正在会话的远程客户端地址、端口

Trace.WriteLine(OperationContext.Current.Channel.RemoteAddress.ToString());
输出:http://schemas.microsoft.com/2005/12/ServiceModel/Addressing/Anonymous

有大虾知道吗?
...全文
871 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaobaook 2008-10-28
  • 打赏
  • 举报
回复

public string GetClientIP()
{
OperationContext context = OperationContext.Current;
MessageProperties messageProperties = context.IncomingMessageProperties;
RemoteEndpointMessageProperty endpointProperty =
messageProperties [RemoteEndpointMessageProperty.Name] as RemoteEndpointMessageProperty;
string ipAddress = endpointProperty.Address;
return ipAddress;
}

可以看下: http://blogs.msdn.com/phenning/archive/2007/08/08/remoteendpointmessageproperty-in-wcf-net-3-5.aspx
zjh222 2008-01-06
  • 打赏
  • 举报
回复
WCF是什么?????
VirtualDesktop 2008-01-06
  • 打赏
  • 举报
回复
我觉得微软貌似没有提供这么一个方法....用回socket吧...
富莱工作室 2008-01-05
  • 打赏
  • 举报
回复
up
富莱工作室 2007-12-29
  • 打赏
  • 举报
回复
UP
heguo 2007-12-27
  • 打赏
  • 举报
回复
我也不知道,如果我做的话,我会让客户端登录时向服务器"报告"自己的IP和端口.
富莱工作室 2007-12-27
  • 打赏
  • 举报
回复
"OperationContext.Current.Channel.Uri "
这个也没有用


"我也不知道,如果我做的话,我会让客户端登录时向服务器"报告"自己的IP和端口."
这个不现实, 你的客户端的连接请求经过NAT以后, 在服务器端看到的并不是你的客户端的真正IP,
比如, 你的客户端在局域网内, IP:192.168.1.13, 连接到服务器后, 服务器拿着那个地址一点用都没有,
所以你的报告显得毫无意义;
VirtualDesktop 2007-12-26
  • 打赏
  • 举报
回复
OperationContext.Current.Channel.Uri

?
yuan731 2007-12-26
  • 打赏
  • 举报
回复
沙发,下班前把0回复的顶起来

110,537

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧