转载地址:http://www.leadnt.com/2011/07/asp-net%E5%88%A0%E9%99%A4%E6%96%87%E4%BB%B6%E5%A4%B9%E5%AF%BC%E8%87%B4%E7%8A%B6%E6%80%81%E5%A4%B1%E6%95%88/
在ASP.NET WEB 应用程序中,如果程序执行删除目录操作,该应用程序会重启,session等会丢失。网上寻找资料,找到一篇文章,很有参考价值。
会引起应用程序重启的原因有:
- 达到最大编译数量(在服务器的machi
ne.config找numRecompilesBeforeApprestart);
- web应用程序的物理路径发生变化;
- 修改Blobal.asax或包含的文件;
- 修改服务器的machine.config;
- 修改当中的web.config;
- /bin/文件夹(或子目录)发生改变;
- 一个文件夹被重命名为/bin/,或创建/bin/文件夹;
- 一个文件夹里同时有很多文件发生改变,.NET系统对这些变化通知来不及反应,这时候可能会重启。比如在高PV时每次访问都生成一次;
- 修改代码安全策略;
- 用户调用HttpRuntime.UnloadAppDomain ;
- 在虚拟目录下的任何文件夹发生改变(删、改等,新增加文件夹不会);
在ASP.NET WEB 应用程序中,如果程序执行删除目录操作,该应用程序会重启,session等会丢失。网上寻找资料,找到一篇文章,很有参考价值。
ASP.NET在收到重启请求时,会重启,这是对的,但重启的同时会重置所对应的缓存、应用程序状态、InProc会话状态等。
会引起应用程序重启的原因有:
- 达到最大编译数量(在服务器的machine.config找numRecompilesBeforeApprestart);
- web应用程序的物理路径发生变化;
- 修改Blobal.asax或包含的文件;
- 修改服务器的machine.config;
- 修改当中的web.config;
- /bin/文件夹(或子目录)发生改变;
- 一个文件夹被重命名为/bin/,或创建/bin/文件夹;
- 一个文件夹里同时有很多文件发生改变,.NET系统对这些变化通知来不及反应,这时候可能会重启。比如在高PV时每次访问都生成一次;
- 修改代码安全策略;
- 用户调用HttpRuntime.UnloadAppDomain ;
- 在虚拟目录下的任何文件夹发生改变(删、改等,新增加文件夹不会);