在仍处于客户端请求的过程中更新ASP.NET web.config

use*_*528 8 asp.net web-config

如果在ASP(ASP.NET 2.0)服务器仍然处理客户端请求时更新web.config会发生什么? - 这个过程会被杀死吗? - 如果没有,该进程是否会在web.config中读取更新.

感谢任何输入

Jay*_*Jay 8

新版本web.config实际上是一个副本,因此持续的请求将不受影响 - 它不会接收更改.请求完成后,新内容web.config将写入旧请求,后续请求将根据更新的值(在新的应用程序域中)进行操作.


Joh*_*n K 5

微软:"ASP.NET将在重启前为所有待处理的请求提供服务"

- http://msdn.microsoft.com/en-us/library/ms178473.aspx

当需要重新启动应用程序时,ASP.NET将在重新启动应用程序域并加载新程序集之前,为现有应用程序域和旧程序集中的所有待处理请求提供服务.

并通过更改到asp.net Web.config文件遵循逻辑流程...


"配置更改导致重新启动应用程序域"

该应用程序有效重启.然而,在第一个模糊中也有一个技巧可以解决这个"问题".

对Web.config文件中的配置设置的更改间接导致应用程序域重新启动.此行为是通过设计发生的.您可以选择使用configSource属性来引用在进行更改时不会导致重新启动的外部配置文件.有关更多信息,请参阅由Section Elements继承的General Attributes中的configSource.

尝试由无权编辑文件的人更改配置文件不会导致重新启动应用程序域.

^ - http://msdn.microsoft.com/en-us/library/ackhksh7.aspx

失去国家

如果存储在进程中,您的应用程序,会话和其他状态将会丢失...

使用进程内会话状态模式时,如果aspnet_wp.exe或应用程序域重新启动,会话状态数据将丢失.

^ - http://msdn.microsoft.com/en-us/library/87069683(VS.71).aspx

存储在应用程序状态中的信息的生命周期含义..NET Framework应用程序域或托管基于.NET的应用程序的进程可以在应用程序执行期间的任何时刻被拆除和销毁(由于崩溃,代码更新,计划的进程重新启动等).

^ - http://msdn.microsoft.com/en-us/library/bf9xhdz4(VS.71).aspx


等等...... 只是一些杂记.关于存储会话状态的信息.

^ - http://msdn.microsoft.com/en-us/library/ms178586.aspx