3

複数のページがあるウェブサイトがあります。各ページには、ユーザーの進行状況を保存する「ドラフトとして保存」メソッドがあります。セッションのタイムアウトが40分で、セッションが期限切れになるたびにページが自動的に「ドラフトとして保存」を呼び出すようにするにはどうすればよいか考えていました(失われないように)

どうすればこのようなことを始められますか?

4

3 に答える 3

4

次のことはできません。セッションはサーバー側で期限切れになり、ブラウザーにメッセージを送信できません(ユーザーがまだページを表示しているか、ブラウザーを閉じているかさえわかりません)。

クライアント側のタイムアウトを設定して、ページを(ドラフトとして)サーバーに保存することもできますが、これにはセッションを更新する効果があります。したがって、5〜10分ごとに自動的に「ドラフトとして保存」を実行するだけで、セッションが維持されます(さらに、実行された作業のドラフトコピーも)。

于 2012-10-31T15:30:01.670 に答える
1

.Netでは、Session_End(object sender、EventArgs e)ルーチンのGlobal.asaxを介してこれを行うことができます。これを使用して、リソースリリース作業を行います。

于 2013-03-29T15:21:24.137 に答える
1

セッションの有効期限が次のようになったら、global.asaxで関数を呼び出すことができます

Sub Session_End(ByVal sender As Object, ByVal e As EventArgs)
    If Not Session.Item("sessionid") Is Nothing Then
        If Session.Item("sessionid").ToString = "1" Then
            ClsUtilities.CustomerLogout()
        ElseIf Session.Item("sessionid").ToString = "2" Then
            ClsUtilities.Logout()
        End If
    End If
End Sub 
于 2016-05-10T11:09:28.433 に答える