c# - WCF session 管理

标签 c# .net wcf

我是 WCF 的新手,正在尝试在 session 管理方面完成一些事情:

  1. 我想在打开/创建新 session 时在服务器上获取一个事件。

  2. 我希望能够关闭所有打开的 session ,或者获取打开的 session 列表并关闭特定 session (当然,在服务器上)。

我该怎么做呢?谷歌出奇地没有帮助......

最佳答案

答案将是很多“视情况而定”。一些绑定(bind)不是 session 感知的。例如 BasicHttpBinding 之类的东西不会自己进行 session ,但是如果您启用 ASP.net compatability mode您可以让 ASP.net 的 session 管理工作。然后,您将能够使用 global.asax 中的 Session_Start 和 Session_End 在 session 打开或关闭时执行您想要的操作。

您应该查看您正在使用的绑定(bind),看看它是否内置了某种 session 支持,因为其中一些支持。

如果您正在进行身份验证,您还可以通过将请求映射到经过身份验证的用户并将 session 记录存储在数据库中来模仿 session 管理系统。

我要说的是,无论如何我都不确定“结束” session 会给您带来什么。除非您还以某种方式将用户锁定在外,否则如果前一个请求结束,下一个请求将立即开始一个新 session 。也许如果您解释您想要完成的目标(以及为什么),我们可以提供进一步的帮助。

关于c# - WCF session 管理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4997846/

相关文章:

c# - WCF 自定义 JSONP 绑定(bind)和 httpsTransport

wcf - 过错还是不过错

c# - 获取特定类中使用的类型

c# - jQuery.ajax() 仅适用于整数

c# - 在 UserControl C# .NET 中添加/停靠控件

c# - 微服务交互

.net - 为什么 Visual Studio 2012 会引用错误版本的程序集?

.net - 在 Visual Basic 中转换为整数时如何确定舍入方向

wcf - WCF 中的复杂数据类型?

.net - 如何在图形对象上绘制半透明文本?