标签:style blog http color io 使用 ar for 文件
新建一个asp文件
1 <%@ Page Language="vb" AutoEventWireup="false" CodeBehind="WebForm1.aspx.vb" Inherits="test.WebForm1" %> 2 3 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 4 5 <html xmlns="http://www.w3.org/1999/xhtml"> 6 <head runat="server"> 7 <title></title> 8 </head> 9 <body> 10 <form id="form1" runat="server"> 11 <div> 12 13 </div> 14 </form> 15 </body> 16 </html>
一、ASP.NET页面
一个ASP.NET页面(或者称为ASP.NET窗体)由以下几个部分组成:
1、指令
(包括@Page、@Import、@OutputCache、@Implements、@Register、@Master、@Control…)
2、Head(HTML文档头)
3、Body(HTML文档体)
窗体元素(form)
控件(html标记、服务器控件标记)
4、代码(客户端代码,服务端代码)
ASP.NET窗体页网页指令控制Web窗体页的行为。网页指令都是以@开头的。
这些指令较多,介绍最重要的@Page指令,它说明该.aspx页面是一个HTML窗体。Language属性说明该页面处理程序使用的是哪种语言,CodeFile属性说明该页面的程序 存放在哪个代码隐藏页文件中,Inherit属性说明该页面是由哪个类负责处理的。如:
<%@ Page Language="C#" % CodeFile=”Default.aspx” Inherit=”Default”>
<form>元素:如果页面包含允许用户交互并提交的控件,则该页面必须包含一个form元素。form元素必须包含runat属性,其属性值设置为server。对于ASP.NET而言一个页面有且只能一个<form runat=”server”>标记。
二、ASP.NET页面代码模型
ASP.NET中每一个页面都有一个类负责对页面的各种操作进行处理,因此.Net Framework把常用的通用功能抽取出来形成一个基类:System.Web.UI.Page。我们所编写的每一个ASP.NET页面都应当从这个类继承。
ASP.NET页面的代码模型主要的有两种:
1、内置代码模型:标记服务器端元素以及事件处理代码全都位于同一个.aspx文件中。在对该页进行编译时,编译器将生成和编译一个从Page基类派生的新类。生成的类将编译成程序集,并将该程序集加载到应用程序域,然后对该页类进行实例化,并执行该页类以将输出内容呈现到浏览器。图1为内置代码模型页面中的页类的继承模型。
简单说就是:aspx文件请求到服务器进行编译过程
2、后台代码(代码隐藏)模型:页面中的标记和服务器端元素(包括控件声明)位于.aspx文件中,而页代码则位于单独的代码隐藏文件(.aspx.vb)中。该代码隐藏文件包含一个分部类,即具有关键字partial的类声明,以表示该代码隐藏文件只包含构成该页的完整类的全体代码的一部分。在分部类中,添加应用程序要求该页所具有的代码,此代码通常由事件处理程序构成,但是也可以包括用户需要的任何方法或属性。
代码隐藏页的继承模型如图2所示 :
(1)代码隐藏文件包含一个继承自基页类的分部类。基页类可以是Page类,也可以是从Page派生的其他类。
(2).aspx文件在@Page指令中包含一个指向代码隐藏分部类的Inherits属性。
(3)在对该页进行编译时,ASP.NET将基于.aspx的文件生成一个分部类,生成的部分类文件包含页控件的声明、事件注册等。使用此分部类,可以将代码隐藏文件用作完整类的一部分,而无须显式声明控件。
(4)步骤(3)中生成的部分类和.aspx.cs文件中的部分类代码合并,生成该页所需的完整代码,编译成程序集,运行该程序集可以将输出呈现到浏览器。
标签:style blog http color io 使用 ar for 文件
原文地址:http://www.cnblogs.com/Alliumhollandicum/p/4012607.html