[英]How to uniquely identify a connection?
我使用NetTcpBinding创建了一个会话式服务:每个客户端都开始使用该服务进行会话,因此我需要以某种方式标识每个会话。 显然,在会话结束时,其标识符也应更改,以便应用程序可以了解客户端可能已更改。
我不知道WCF或总的说来是.NET是否提供一种方法,可以根据我刚刚描述的要求唯一地标识各种活动会话。
另外,我想到了以下想法:
public class ConnectionIdentifier {
public UInt16 ConnectionNumber {get; set;}
public Uint64 ConnectionTime {get; set;}
}
因此,当建立一个新会话时,我为其分配一个会话号(即ConnectionNumber
)和启动会话的时间(即ConnectionTime = DateTime.Now.Ticks
)。 但是,在这种情况下,如何确定会话结束以释放相应的号码?
此外,还有其他方法可以唯一地标识会话吗?
WCF为此内置了功能。 这样做的方法是将服务合同标记为“每个会话”,然后为每个客户端/会话获取服务的实例。
请参阅: http : //msdn.microsoft.com/en-us/magazine/cc163590.aspx
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.