title: ApplicationShutdownReason.BuildManagerChange and ApplicationPool restart in IISExpress
body: <p>We have a problem. We are using IISExpress 8.0 for Asp.net WebForm application(.net 4.0). 
  Comupter is running under Windows 7 x64.</p>
  
  <p>Sometimes without any reason ApplicationPool restarts. I know that it will restart after 15 aspx\ascx file changes. But in that case it restarts without any changes.
  On ApplicationEnd we found a reason of this restart. It's <strong>ApplicationShutdownReason.BuildManagerChange</strong>.</p>
  
  <p>Search in the Internet won't give anything usefull details. Mostly all recomends to use IIS instead of IISExpress.</p>
  
  <p>Do you know what could be a reason for it?</p>
  
  <p><strong>UPDATE</strong>:</p>
  
  <p>Digging deeper into .Net 4 source code give two reasons of this shutdown.
  One of them is triggered when someone changed hash.web file from Temporary Asp.net folder. For example - "c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\app\a83dcad1\be4aa699\hash\hash.web" </p>
  
  <p>Second reason is when BuildManager built some object and cached BuildResult in HttpCache. And then if it's expired it checks that this BuildResult require ShutdownAppDomainOnChange on cache expiration. And if it's require it, then it triggers BuildManagerChange shutdown.</p>
  
  <p><strong>UPDATE2</strong></p>
  
  <p>In our case restart was caused by hash.web change. Seems IISExpress updates it without any source code change, but why?</p>
  
  <p><strong>UPDATE3</strong>
  Microsoft has an issue about it - <a href="https://connect.microsoft.com/VisualStudio/feedback/details/783440/microsoft-visualstudio-web-host-exe-touches-hash-web-and-should-not-be-running" rel="nofollow">https://connect.microsoft.com/VisualStudio/feedback/details/783440/microsoft-visualstudio-web-host-exe-touches-hash-web-and-should-not-be-running</a>
  They say that they fixed it in Visual Studio 2012 Update 2.</p>