ASP.NET页面传值方式详解:QueryString、Session等

0 下载量 41 浏览量 更新于2024-08-29 收藏 79KB PDF 举报
ASP.NET 页面传递值的方式介绍 本文将对 ASP.NET 中页面传递值的方式进行详细介绍,包括 QueryString、Session 等方式的优缺点、使用方法和实例代码。 一、QueryString QueryString 是一种非常简单的传值方式,可以将传送的值显示在浏览器的地址栏中。如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法。但是对于传递数组或对象的话,就不能用这个方法了。 优点: 1. 使用简单,对于安全性要求不高时传递数字或是文本值非常有效。 缺点: 1. 缺乏安全性,由于它的值暴露在浏览器的 URL 地址中的; 2. 不能传递对象。 使用方法: 1. 在源页面的代码中用需要传递的名称和值构造 URL 地址; 2. 在源页面的代码用 Response.Redirect(URL);重定向到上面的 URL 地址中; 3. 在目的页面的代码使用 Request.QueryString[“name”];取出 URL 地址中传递的值。 实例代码: (1) a.aspx ```csharp private void Button1_Click(object sender, System.EventArgs e) { string s_url; s_url = "b.aspx?name=" + Label1.Text; Response.Redirect(s_url); } ``` (2) b.aspx ```csharp private void Page_Load(object sender, EventArgs e) { Label2.Text = Request.QueryString["name"]; } ``` 二、Session Session 是一种常用的传值方式,操作与 Application 类似,作用于用户个人,所以,过量的存储会导致服务器内存资源的耗尽。 优点: 1. 使用简单,不仅能传递简单数据类型,还能传递对象; 2. 数据量大小是不限制的。 缺点: 1. 在 Session 变量存储大量的数据会消耗较多的服务器资源; 2. 易于丢失。 使用方法: 1. 在源页面的代码中创建你需要传递的名称和值构造 Session 变量:Session["Name"]="Value(OrObject)"; 2. 在目的页面的代码使用 Session 变量取出传递的值:Result=Session["Name"]。 注意:Session 不用时可以销毁它,销毁的方法是:清除一个:Session.Remove("session名");清除所有:Session.Clear()。 实例代码: ```csharp // 在源页面的代码中 Session["Name"] = "Value"; // 在目的页面的代码中 string result = Session["Name"]; ``` ASP.NET 中页面传递值的方式有多种,包括 QueryString、Session 等,每种方式都有其优缺点和使用场景,开发者可以根据实际情况选择合适的传值方式。