一 ASP.NET中有一常用的内置对象,当Web应用程序运行时,这些对象提供了丰富的功能,如维护Web服务器的活动状态,网页输入输出等。
常用的内置对象:
1.1 Page对象
在ASP.NET中,每个页面都派生自Page类,并继承这个类公开的所有方法和属性。
Page 类与扩展名为 .aspx 的文件相关联,这些文件在运行时被编译为 Page 对象,并被缓存在服务器内存中。
由于网页编译后所创建的类由Page派生而来,因此网页可以直接使用Page对象的属性、方法和事件。
1.2页面类的构造:
1.3 网页的生命周期:
当请求Web服务器上的一个ASP.NET网页时,这个网页就会被加载到Web服务器的内存中,经过处理后发送给用户,既从内存中卸载。这个过程称为网页的生命周期,它的目标就是为发送网页请求的浏览器呈现适当的HTML网页。
网页生命周期有两种稍微不同的顺序:一种是首次加载网页,另一种是在回传过程中再次加载网页。
在生命周期的每个阶段,都提供了可以使用的方法和事件,供程序开发人员来重写ASP.NET引擎的默认处理行为,或增加自己的处理逻辑。
1.4 ASP.NET 如何处理事件:
①当页面首次运行时,ASP.NET创建一个Page对象和一些控件对象,执行初始化代码,然后页面被渲染为HTML格式返回到客户端。
②当用户触发了页面回发(PostBack)时,通常是触发了某个事件,比如单击按钮事件,这时候页面将再次提交所有的表单数据到服务器端。
③ASP.NET获取返回的页面,并重新创建Page对象。
④ASP.NET检查是什么事件触发了PosBack,并响应相应的事件,这时候将执行开发人员编写的触发事件代码。
⑤页面将被渲染并返回到客户端,Page对象从内存中释放。
当@Page指令的AutoEventWireup属性被设置为true后,页面事件将自动绑定至使用“Page_事件”命名约定的方法,比如“Page_Init”、“Page_Load”。
1.5ASP.NET的网页生命周期:
1.6 Page对象的属性、方法和事件
http://www.w3school.com.cn/aspnet/prop_control_standard_page.asp
http://www.w3school.com.cn/aspnet/webpages_objects.asp
1.7 Page对象的使用:
例:使用IsPostBack属性
W1_7.aspx:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="W4_1_3.aspx.cs" Inherits="csweb1_W4_1_3" %>
<!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 runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<div>
<p><asp:Label ID="Label1" runat="server" Text="姓名"></asp:Label>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox></p>
<p> <asp:Button ID="Button1" runat="server" Text="提交" CssClass="m1" /></p>
<p>
<asp:Label ID="Label2" runat="server" Text="Label"></asp:Label> </p>
</div>
</div>
</form>
</body>
</html>
W1_7.aspx.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class csweb1_W4_1_3 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
Label2.Text = TextBox1.Text + ":你已经提交";
else
Label2.Text = "没有提交";
}
}
2. Request对象:
Request对象的主要功能是从客户端获取数据。使用该对象可以访问任何HTTP请求传递的信息,包括使用POST方法或者GET方法传递的参数、cookie和用户验证。
2.2Request对象的属性与方法:
http://www.cnblogs.com/amber-liu/p/10000141.html
2.3 应用Request对象:
例:获取客户端信息
W2_3.aspx:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="w4_2_2.aspx.cs" Inherits="csweb1_w4_2_2" %>
<!DOCTYPE html PUBLIC "-//W3C//D