VB.NET Web アプリケーションがあり、そのページの 1 つにデータ入力用の複数のテキスト ボックスがあります。ページが XX 分間完全にアイドル状態の場合、ページのデータを保存してタイムアウトさせたいと考えています。
ユーザーが段落を入力している最中にページがタイムアウトし、変更が保存されていないと不満を言うユーザーを使用して XX 分のセッション タイムアウトを設定すると。
1 分のタイマーを追加し、タイマーが起動するたびに Save() 関数を呼び出すと、データは 1 分ごとに保存されますが、タイマーが起動するとセッション タイムアウト タイマーが 0 から再起動するため、タイムアウトは発生しません。
タイマー間隔を毎回長くしてみました(1分、2分、4分、8分…、XX+2分まで)。timer.Tick ハンドラーで、セッションの有効期限が切れているかどうかを確認し、有効期限が切れている場合は Response.Redirect() を使用してデフォルト ページに戻ります。
これはある程度機能します。最後のタイマー インターバル中にユーザーが長い段落を入力している場合、セッション タイムアウトが発生すると、前回のタイマー ティック以降に変更されたデータはすべて失われます。
多くのテキスト ボックスの 1 つで入力が行われており、タイムアウトしていないことを確認する方法はありますか?
他の人々はこの状況にどのように対処しましたか?