<1>详情可参考:http://www.cnblogs.com/cpcpc/archive/2010/05/28/2123124.html
aspx页
<pre name="code" class="html">ASPX是前台,表示设计页面;ASPX.CS是后台,是代码功能实现,分开来设计是为了代码清晰,功能模块化。 CodeBehind="WebForm1.aspx.cs" 表示:指定后台文件的路径(即这个WebForm1.aspx这个前台文件所对应的后台文件的路径,这里指定后台文件的路径是WebForm1.aspx.cs) Inherits表示继承;Inherits="Home.WebForm1"表示当前页面.即:webForm1.aspx 这个页面是继承Home命名空间下WebForm1这个类的(注意这个webForm1是一个类,你打开webForm1.aspx.cs这个文件可以看到public partial class WebForm1: System.Web.UI.Page 说明WebForm1这个类是继承Page类的),也可以继承其他页面,继承了其他页面,就可以使用其属性和方法. //------------------------------------------------------------------------------------ <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="webform.WebForm1" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head id="Head1" runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div> <!---------------------在aspx页面输入C#代码的几种形式---------------> <!---------------------输出10个"你好"---------------> <% for (int i = 0; i < 10; i++) { Response.Write("你好"); } %> <!---------------------输出10个"中国"--------------------------> <%for (int i = 0; i < 10; i++) %> <%{ %> 中国 <%} %> <!---------------------输出10个"美国",这10个"美国"分10行显示的-------------------> <%for (int i = 0; i < 10; i++) %> <%{ %> <span>美国</span> <%} %> <!----------------------------------------------------------------------------> <!--在aspx.cs里定义了一个返回值为int的Num方法,在这里调用Num方法,并输出该方法的返回值--> <%=Num(5, 6)%> <!----------------------------------------------------------------------------> <!--在aspx.cs里定义了一个void的SayHello()方法,在这里调用SayHello()方法--> <% SayHello();%> </div> </form> </body> </html>aspx.cs页面
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace webform { public partial class WebForm1 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { //aspx.cs文件中存放有一个类(例如WebForm1),在你在浏览器输入地址(如:localhost:1555/webOne/WebForm1.aspx)向服务器请求该页面(WebForm1.aspx)时,ASP.NET就会将aspx.cs中的类作为基类,把当前的页面(aspx文件),编译生成一个新的类(例如了B,这个新的类就是下面所说的"当前类")然后交给.NetFramework去执行,执行完了之后生成HTML代码,然后以流的方式,再由这个服务器返回到浏览器,浏览器接收响应之后,它有把这个流转成HTML代码,然后显示在浏览器的界面上。 //因为这个新的类是继承WebForm1的,所以你在aspx页面也是可以访问aspx.cs页面的方法及属性的(当然,基类的方法或属性的最少访问级别是public,protected),然后由B类产生对象在服务器端生成HTML文件发送给客户端,所以说这里是继承关系【通俗的讲:其实际就是aspx页继承aspx.cs页】 //当你执行这个页面的时候,当前类(ASP.webform1_aspx )其实是当前页面这个类(WebForm1 )的子类, 这个当前类是ASP给你自动生成的 Response.Write(this.GetType()+"<br/>"); //获取当前类的类型 输出:ASP.webform1_aspx Response.Write(this.GetType().BaseType);//获取当前类的父类型。输出webform.WebForm1 } public int Num(int a,int b) { return a + b; } public void SayHello() { Response.Write("大家好"); } } } } }