検索しましたが、この質問に対する具体的な回答は見つかりませんでした。セッションの有効期限が切れる前に、サーバーの残り時間を取得するにはどうすればよいですか? 私のセッション設定:
//タイムアウト (例: 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 分ポイントにリセットしません。
有効期限までの残りのセッション時間を取得するにはどうすればよいですか?