说说WebFrom的页面本质和呈现原理

webFrom页是由前台面和后台面组成的也就是(codebehind)代码分离,前台文件(.aspx) 和后台文件(.cs)是不相干的两个类.它们是子父类继承的关系.在前台可以通过<% %>调用后台任何非私有的属性和方法等成员,前台控件注有runat=server的后台都可以调用.

前台页面中的<% %>来调用后台c#代码。<%=uesrName %>相当于Response.write(userName)

.Aspx \.CS\.dll 三者之间的关系

webForm前台页面文件(.aspx)在被问时会被编译为dll文件,在dll文件中包含了两个类文件:前台页面类和后台页面类,其中的前台页面类继承后台页面类.

通过反编译软件查看编译好的dll文件,可以看到如下两个类:

前台页面实际上是一个控件的集合,为什么这样说呢,我们通过反编译工具查后就会发现,前台页面类→后台页面类→Page→TemplateControl→Control(包含ControlCollection集合对象) 这是一步步继承的关系。

关于页面的呈现见下图:

对于页面呈现的部分,在接下来的页面的生命周期的探讨中我会详细的表述出来。本文主要说明WebFrom页面的前台后本质关系。

 

posted @ 2012-02-04 16:37  孤星缀月  阅读(783)  评论(0编辑  收藏  举报