1

最近asp.net Webページを公開しましたが、ページを非アクティブにして約1分間フォーカスを置かずに放置した後、ページ上の何か(ボタン、リンクなど)を押そうとすると接続がタイムアウトします。これを回避するには、ページを更新して、実行しようとしていたボタン/機能を続行する必要があります。

セッションのタイムアウトは現在 100 分に設定されており、なぜこれが起こっているのか途方に暮れています。私のサイトは、VS 2010 ult と .net v4.0(.30319) を使用して構築されています。何が原因なのか見当がつかないので、これについて他にどのような関連情報を提供できるかわかりません。

どうもありがとう、ピーター

4

3 に答える 3

1

あなたのウェブサイトはbinまたはrootフォルダー内のファイルを更新しますか?その場合、アプリケーションはリロードされ、すべてのセッションが事実上終了すると思います。

ここから撮影...

再起動できる/再起動する(または技術的には、それ自体をアンロードする)理由の中には、次のようなものがあります。

  • web.configが編集されます
  • machine.configが編集されます
  • global.asaxが編集されます
  • ファイルは、Webアプリのbinディレクトリ、またはbinのサブディレクトリの1つで変更されます
  • Webアプリディレクトリ内でディレクトリが作成、名前変更、または削除されます
  • ASP.NETファイル(aspx、asmxなど)は20回以上編集(したがって再コンパイル)されます。これは、マシン構成でnumRecompilesBeforeApprestartという名前の要素としてデフォルトで設定されています。
  • machine.configの要素のさまざまな属性の設定によって、ワーカープロセス自体の再起動/シャットダウンに影響を与えます。Windows 2003では、IIS5分離モード(デフォルトでは使用されません)を使用しない場合、これらの要素は無視され、代わりにIISマネージャーのアプリケーションプールの設定が使用されます。
于 2011-08-12T18:28:40.957 に答える
1

コードをチェックしてsession.abandon、新しいセッションを作成するなどしてください。ポストバックごとではなく、適切なタイミングで発生していることを確認してください。

于 2011-08-12T18:34:37.557 に答える