background image

ASP.NET 中,页面间传值总结

1. Get 方式

方式:在 url

 

后面跟参数。

 

特点:简单、方便。
缺点:字符串长度最长为 255 个字符;数据泄漏在 url

 

中。

 

适用数据:简单、少量、关键的数据。
适用范围:传递给自己、传递给另一个目标页面;常用于 2

 

个页面间传递数据。

实例:假如 Page01 要向 Page02 传递参数 username 与 userid 的信息,在 Page01
的后台代码中,有如下内容,

Response.Redirect("Trans02.aspx?username=name&userid=id");

在 Page02 中,使用 Request.QueryString

获得数据,下面值的内容分别为 name”和

“id”。

Request.QueryString[0];   

或 Request.QueryString["userid"];

2. Post 方式

方式:通用的方式。利用 form

 

提交。

特点:最常用的方法。常用技巧是把隐秘的数据存在隐藏域中由 form

 

提交。

 

适用数据:大量数据,包括文件上传。
适用范围:同 Get

 

方法

用法:在客户端 form 指定 action 目标后 submit、在 asp.net 的伺服端中使用
server.Transfer(url)提交;在伺服端中用 Request.Form["FormFieldID"]

 

获取。

注意:(1)Server.Transfer 方法能够跳转的页面只能局限在发起页面所在的虚拟页面
内,而 Response.Redirect 不受这个限制。(2)使用时,Server.Transfer 跳到别的页
面后,浏览器显示的地址不会改变,有时反而会造成误会,当然也有些场合需要这样的
效果;(3)Server.Transfer 可以减少客户端对服务器的请求;用 Server.Transfer 迁
移到另一个页面保持着服务资源,而不是简单的通知浏览器服务端换了个页面并迁移请
求,这意味着你不需要携带更多的 Http 请求,因此可以减轻服务端的压力而使你的应用
运行得更快。(4)Server.Transfer 是在服务器上执行的,所以浏览器没有页更改的记