0

私はasp.netが初めてです。だから私を助けてください。このリンクの指示を使用してセッション モードを SQLServer に変更することにより、いくつかのセッション変数を保持しようとしています。

http://blogs.msdn.com/b/akshayns/archive/2008/10/04/how-to-configure-sql-server-to-store-a-session-state.aspx

セッションをSQL Serverデータベースに保存すると、セッションがタイムアウトした後でもセッションが保持されるという投稿をいくつか読みました。しかし、私の場合、セッションのタイムアウト後、aspstateTempSessions テーブルのセッションも削除されます。タイムアウト後に保持したいいくつかのセッション変数を保持するようにasp.netに指示する方法はありますか?

ありがとう。

4

1 に答える 1

3

セッションは、セッションがアクティブである間だけ存続するように設計された、揮発性のストレージ システムです。セッションを存続させるために値が必要な場合は、(セッションではなく) ユーザーに結び付けられた SQL テーブルなど、別の永続的な構造に値を格納する必要があります。

編集: ウィザードの「状態」(完了したステップ、選択されたオプションなど)を保存するオブジェクト構造を考え出すことができれば、オブジェクトをシリアル化し、ユーザーのlogin と ProductID を主キーとして使用します。そうすれば、状態を逆シリアル化でき、ユーザーは中断したところから再開できます。

コメントで述べたように、放棄タイムアウト期間を設定する必要があります。その後、そのオブジェクトのすべての編集が削除され、失われたと見なされます。

于 2012-05-11T01:01:27.417 に答える