我从进程中成员资格提供程序切换到sql成员资格提供程序,以阻止人们在网站进程回收时丢失会话,但会话似乎仍然超时。
除了在web.config中设置的会话超时变量之外,还有其他任何事情会导致会话在使用sql成员资格提供程序时超时。 我希望即使用户关闭并打开浏览器,会话也会保持不变。我必须做些什么特别的事吗?
答案 0 :(得分:1)
使用持久性cookie(“记住我复选框”),用户登录3天。如果你想让这个窗口更大,你需要自己构建它。
答案 1 :(得分:0)
我不认为关闭Window后可以继续会话。用户帐户由会话cookie编制索引,并在关闭窗口时删除。
答案 2 :(得分:0)
您会混淆会话(其性质过期,应该适用于仅适用于单个会话的瞬态数据)和配置文件。您可以使用ASP.NET的成员资格数据库功能来设置持久性设置,但只有在用户保持登录状态时才会重新出现。
然而......还有匿名身份证明。您可以在web.config
中启用它<anonymousIdentification enabled="true"/>
然后将您的个人资料设置标记为匿名用户可用;
<profile>
<properties>
<add name="Name" allowAnonymous="true" />
</properties>
</profile>
匿名cookie持续约70天。如果您决定支持注册和完整的会员资格,则需要在注册时将匿名设置移动到用户的设置。