我搜索了但我没有找到这个问题的任何具体答案。 如何在服务器中获得价值在会话到期之前剩余多少时间? 我的会话设置:会话超时.NET
//超时例如10分钟。
<authentication mode="Forms"> <forms name=".ASPXAUTH_External" loginUrl="Authentication/Unauthorized.aspx" protection="All" timeout="10" path="/" slidingExpiration="true" defaultUrl="~/Pages/home.aspx" cookieless="UseDeviceProfile" enableCrossAppRedirects="false"/>
</authentication>
<sessionState mode="InProc" timeout="10">
</sessionState>
我得到的初始值(它会得到10 * 60 = 600秒):
SessionStateSection sessionSection = (SessionStateSection)WebConfigurationManager.GetSection("system.web/sessionState");
countdown.Text = sessionSection.Timeout.TotalSeconds.ToString();
但是,当会话时间离开不到一半的用户做一些动作。我得到初始值600,但它左边的会话时间不相等,因为“slidingExpiration”增加了一些时间(我不知道多少),但不会重置会话剩余时间,以开始10分钟点。
如何获得剩余会话时间直至到期?
这个。没有解决问题(滑动过期,不设置会话过期到开始点(10分钟)它添加“一段时间”)。但是,当会话时间剩下不到一半,用户做一些行动。我获得了600秒的价值,但对于左侧会话时间并不相等,因为“slidingExpiration”增加了一些时间(我不知道有多少时间),但不会将会话剩余时间重置为开始10分钟点。 – Drasius 2013-02-23 08:20:47