2017-09-20 15 views
0

フォーム認証を使用するASP.NET Webフォームアプリケーションがあります。ASP.NET Webフォーム:開発環境で、コード変更後にエンジニアがログアウトする

クラスライブラリプロジェクトとは異なり、メインのウェブサイトプロジェクト(ASPXページ)を変更すると、ソリューション全体を再コンパイルしてブラウザで結果をテストする必要はありません。変更を保存してブラウザを更新するだけです。

私たちの状況では、1回の変更を行った後、ブラウザを保存して更新するとすべて正常に動作します。しかし、6日または7日または8日の変更後、私たちはログアウトします。ログイン画面に戻るためにブラウザを更新するのに長い(5分)遅れがあります。

私はGoogle検索を試みましたが、関連する情報は見つかりませんでした。誰かがこれを引き起こしたり正しい方向に向いていることを知っていますか?

ありがとうございます。

+0

多分これは助けることができる:https://stackoverflow.com/a/13230002/3778318 –

答えて

1

セッションが「InProc」モードになる可能性が高いため、セッション変数が.NETワーカープロセスにローカルに格納されていることを意味します。

参考:https://blogs.msdn.microsoft.com/webtopics/2009/07/21/in-proc-session-state-management/

は、心の中であなたがマークアップファイル(ASPX)を更新毎回これを持つ.NETを使用して、ソリューション全体を再コンパイルする必要なく、変化を確認することができます、それだけで何のかもしれないのaspxをプリコンパイルセッション変数が消えてしまっています。

あなたはここにこれに対するより広範な答えを見つけることができますし、この動作を回避する方法:https://stackoverflow.com/a/13230002/3778318

+0

あなたは正しいです、私たちはありますInProcを使用します。マークアップファイル(ASPX)の変更を行い、aspxをあらかじめコンパイルしておき、ブラウザで更新された変更を見ることができます。問題は、n番目のマークアップファイル(ASPX)の変更によって、セッション変数が消えることです。あなたが投稿したSO記事は、そこにあるリンクの1つが壊れているため、良い解決策を提示していないようです。受け入れられた答えはVS 2015にも適用されません。もう1つの解決策は、セッションを保存するためにStateServerまたはSQLServerを使用することであると思われます。これは、開発者だけに起こる問題に対する良い解決策ではないようです。 – Pavel