aspx页面是如何执行的?

时间:2012-02-27 18:09:06

标签: c# asp.net clr execution page-lifecycle

  

可能重复:
  What is the 'page lifecycle' of an ASP.NET WebForm?

我在.net上研究过很多关于执行过程的文章。我发现的是那个

语言代码(C#,vb,j#等)---->语言编译器---> MSIL代码-----> 现在这个MSIL代码由CLR

内的实时处理

这个过程适用于类库执行或Windows应用程序或控制台应用程序,但在asp.net中我们有一个.aspx页面+后面的代码(c#,vb等)...在这种情况下,这个执行过程如何地方?

2 个答案:

答案 0 :(得分:3)

ASP.NET将处理您的ASPX和代码隐藏文件,如下所示:

  1. 从磁盘加载ASPX
  2. 将ASPX代码解析为可通过扩展性挂钩编辑的代码dom
  3. 将该代码保存到磁盘上的C#文件
  4. 使用csc.exe将此代码编译为程序集。 / bin文件夹中的所有内容都可以作为参考。
  5. 装入组件。
  6. 加载所有垃圾箱组件。
  7. 在新编译的程序集中调用呈现代码。这将启动JITing和执行的常规过程。

答案 1 :(得分:0)

这里详细介绍可能有点太多了,但是你需要查看ASP.Net页面生命周期:

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

评论者建议的其他信息: 在实际执行之前,IIS编译页面及其代码后面的代码,或从编译缓存中检索编译的代码(ASP.Net动态编译);更多信息:

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