2009-06-04 71 views
4

在.net 2.0上使用远程处理时,是否可以找到/获取有关连接客户端的一些信息?我想知道在服务器端获取有关连接客户端的一些信息,因此我可以采取相应措施?这是一个小而且非常本地的应用程序,永远不会超过10个同时连接/请求客户端。远程处理 - 有关客户端的信息。 c#

在每个函数中传递客户端引用? (或一些标识符)?我可以这样做,但我更愿意从请求/连接客户端获取信息。 IP地址或类似的会很好。

问候

回答

1

question可能有你要找的答案。

我剥去了可能对你无关紧要的部分,并留下了实际占用IP地址的部分。

public ServerProcessing ProcessMessage(IServerChannelSinkStack sinkStack, 
    IMessage requestmessage, ITransportHeaders requestHeaders, 
    System.IO.Stream requestStream, out IMessage responseMessage, 
    out ITransportHeaders responseHeaders, out System.IO.Stream responseStream) 
{ 
    // Get the IP address and add it to the call context. 
    IPAddress ipAddr = (IPAddress)requestHeaders[CommonTransportKeys.IPAddress]; 
} 
0

This question显示URI的表观格式,即在ObjRefRemotingServices.GetObjRefForProxy当你得到URI财产将它传递给一个远程对象。前两个斜杠之间的字符串是按进程的GUID,它从本地程序的角度唯一标识客户端。

在我的情况下,我只需要一些方法来识别客户端,而不是它的IP地址(这对非TCP通道无效),所以这对我很有用。

相关问题