ASP.NET页面请求阶段...
在页面请求阶段(页面生命周期之前),ASP.NET如何确定页面是否需要第一次被解析和编译,或者2)由于标记更改(假设“允许此预编译站点可更新”= true)或程序集更改而重新解析并重新编译?我可以做出一些非常安全的假设,但是有谁知道ASP.NET究竟如何做出这些决定?ASP.NET页面请求阶段...
ASP.NET页面生命周期: http://msdn.microsoft.com/en-us/library/ms178472.aspx
编辑:所以,“第一时间”被确定为关闭ASP.NET网站上的第一个资源请求; soooooo,这不是一个页面或资源(单数)需要被解析和编译的问题,而是需要“第一次”解析和编译,而ASP.NET解析和编译所有第一次任何页面或请求的资源。 “Reparse and recompile”以一种“懒惰”的方式出现:当对动态编译文件进行更改时,会使该文件以前编译的缓存版本无效;这会触发它的重新编译和所有受影响的资源。下一次需要代码 - 根据所做的更改,所有文件的1-n可能需要重新编译。
感谢@Mass为link
关于第二点(“重新解析和重新编译由于标记变化”):
有由HTTP运行时开始一个文件系统监视器。您可能想要使用反射器来探索HttpRuntime.StartMonitoringDirectoryRenamesAndBinDirectory()
方法。
监测由FCNMode
注册表项设置下
HKEY_LOCAL_MACHINE \ SOFTWARE \微软\ ASP.NET(86) HKEY_LOCAL_MACHINE \ SOFTWARE影响\ Wow6432Node \微软\ ASP.NET(64)
很酷的豆类,这些都是我正在寻找的细节。 – gangelo
.. ..欢迎:-) –
[缓存ASP.NET页面](http://msdn.microsoft.com/en-us/library/06bh14hk%28v=vs.100%29.aspx) – AminM