Framework检测这个页面对应的.NET类

了解ASP.NET页面

葡京网站spj3355,动态编辑

当你新建一个页面时,其实是创建一个.NET类的源代码,System.Web.UI.Page类的实例。

请求一个ASP.NET页面时,ASP.NET
Framework检测这个页面对应的.NET类,如果对应的类不存在,Framework会自动把这个页面编译成一个新的类,并把编译后的类(程序集)保存在位于下面这个路径的ASP.NET临时文件夹中WINDOWSMicrosoft.NETFramework[version]Temporary
ASP.NET Files

下一次对这个页面的请求时,页面就不会再编译一次了。先前的编译类会执行并把结果返回给浏览器。

代码分离

Code Behind就是所谓的代码分离,自从Microsoft公司推出了ASP.NET以后,Code
Behind就是一个热门的话题。在一般的ASP.NET文件中,Code
Behind主要是用二个文件来创建一个ASP.NET的页面,其中一个是设计文件,一般以.aspx或者.ascx做为扩展名,而另外一个是程序代码文件,一般以.vb或者.cs做为扩展名,其程序设计语言主要是VB.Net或者是C#。

处理页面事件

下面是请求页面时引发的事件序列:

  1. PreInit

  2. Init

  3. InitComplete

  4. PreLoad

  5. Load

  6. LoadComplete

  7. PreRender

  8. PreRenderComplete

  9. SaveStateComplete

  10. Unload

使用Page.IsPostBack属性

Page类包含IsPostBack属性,该属性用于检测页面是否已经回传给服务器端。

因为有视图状态,所以初始化控件的属性后,并不想每次页面加载都初始化这个属性。视图状态在页面回传过程中保存了控件属性的状态,所以只在页面第一次加载时初始化控件属性一次。

事实上,如果每次页面加载都重新初始化控件的属性,很多控件将不能正确地工作。在这种情况下,就需要用IsPostBack属性来检测页面是否已经回传给服务器端。