我们正在研究实现一个custom session state module,它重新使用了asp库存模块的组件.我们的主要目标是阻止会话锁定(不将会话状态模式更改为ReadOnly).这可能吗?
我们希望使用的关键部分之一是能够使用.NET内部使用的相同的Out of Proc会话存储提供程序(ASP状态服务),因为我们有一个负载均衡的环境,它不会使用粘性会话.
我已经在the reference source中挖掘了代码,我的发现如下.我希望有人有一个不同的实用程序,可能会用于集成ASP状态服务的自定义会话状态模块.
默认会话模块是System.Web.SessionState.SessionStateModule
.这是一个Sealed类.此类似乎是唯一使用SessionStateMode.StateServer
enum值的类(在Web配置中指定).
设置此标志后,模块会将_store变量设置为新的System.Web.SessionState.OutOfProcSessionStateStore
,这是一个Friend Sealed类.
我最初对如何做到这一点有一些想法,并且由于上面类的修饰符,我无法做到这些.还有其他方法可以采取吗?
>实例化一个新的System.Web.SessionState.SessionStateModule并引用_store变量.这不起作用,显然是因为_store变量是私有的.
>我尝试创建一个继承自System.Web.SessionState.SessionStateModule的类,但很明显,因为它是密封的,不起作用.
>看着从.NET框架代码中复制代码.意识到这将是一个非常糟糕的决定.
我有什么选择吗?
解决方法
它提供了会话主题的一些起点和信息,尤其是锁定问题.
如果您寻找会话模块的自定义实现,您可以在这里查看:
http://www.codeproject.com/Articles/11712/Custom-session-state-management-in-ASP-NET
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。