问题描述
服务端:服务契约IService1与IService2,分别有相应服务实现客户端:在同一机器上使用ChannelFactory<TService>创建这两种服务并调用问:服务端如何知道来自客户端的2个调用来自同一台机器?使用OperationContext.Current.SessionId试过了,不同,无法实现。
解决方案
解决方案二:
引入SESSION也成呀。
解决方案三:
引用1楼的回复:
引入SESSION也成呀。
如何引用?
解决方案四:
试验一下这个好用不://GetClientmachinenameRemoteEndpointMessagePropertymessageProperty=OperationContext.Current.IncomingMessageProperties[RemoteEndpointMessageProperty.Name]asRemoteEndpointMessageProperty;Console.WriteLine("Remoteaddressis:{0}",messageProperty.Address);
解决方案五:
用IP地址应该无法解决。假设两客户端在内网,不管它们是否在同一内网,WCF服务端所获取到的客户端IP都有可能是一样的。谢谢!引用3楼的回复:
试验一下这个好用不:C#code//GetClientmachinenameRemoteEndpointMessagePropertymessageProperty=OperationContext.Current.IncomingMessageProperties[RemoteEndpointMessageProperty.Name]asRemoteEndpo……
解决方案六:
看本人的“”
解决方案七:
引用4楼的回复:
用IP地址应该无法解决。假设两客户端在内网,不管它们是否在同一内网,WCF服务端所获取到的客户端IP都有可能是一样的。
你的意思是不是:client1,client2,不能相互通信,也即可以是ip相同,但都可以通过网络组建访问同一个Server?
解决方案八:
引用6楼的回复:
引用4楼的回复:用IP地址应该无法解决。假设两客户端在内网,不管它们是否在同一内网,WCF服务端所获取到的客户端IP都有可能是一样的。你的意思是不是:client1,client2,不能相互通信,也即可以是ip相同,但都可以通过网络组建访问同一个Server?
YES
时间: 2024-12-05 13:10:17