問題があります。Asp.net WebForm アプリケーション (.net 4.0) には IISExpress 8.0 を使用しています。コンピューターは Windows 7 x64 で実行されています。
理由もなく ApplicationPool が再起動することがあります。aspx\ascx ファイルを 15 回変更すると、再起動することがわかっています。しかし、その場合、何も変更せずに再起動します。ApplicationEnd で、この再起動の理由が見つかりました。ApplicationShutdownReason.BuildManagerChangeです。
インターネットで検索しても、有用な詳細は何も得られません。ほとんどの場合、IISExpress の代わりに IIS を使用することをお勧めします。
何が原因か分かりますか?
更新:
.Net 4 ソース コードをさらに掘り下げると、このシャットダウンの 2 つの理由がわかりました。それらの 1 つは、誰かが一時 Asp.net フォルダーから hash.web ファイルを変更したときにトリガーされます。例 - 「c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\app\a83dcad1\be4aa699\hash\hash.web」
2 番目の理由は、BuildManager が何らかのオブジェクトを構築し、BuildResult を HttpCache にキャッシュしたときです。そして、有効期限が切れている場合は、この BuildResult がキャッシュの有効期限で ShutdownAppDomainOnChange を要求することを確認します。必要な場合は、BuildManagerChange のシャットダウンをトリガーします。
更新2
私たちの場合、再起動は hash.web の変更が原因でした。IISExpress はソース コードを変更せずに更新しているようですが、なぜですか?
UPDATE3 Microsoft には問題があります - https://connect.microsoft.com/VisualStudio/feedback/details/783440/microsoft-visualstudio-web-host-exe-touches-hash-web-and-should-not-be- Visual Studio 2012 Update 2 で修正したとのことです。