整理以前资料,未完待续!
页面传值方法
总结在使用ASP.NET进行网页开发时有哪些方法可以进行页面传值!
QueryString
这是很老的机制,主要优点实现起来非常简单;缺点是传递的值是会显示在浏览器的地址栏上的,同时又不能传递对象。
将传递的值显示在浏览器的地址栏上一般会造成SQL注入的缺陷,如何防止SQL注入呢?详见SQL注入Session变量
缺点:存储过多的数据会消耗比较多的服务器资源.
基本语法:Session.Add();Session.Remove();Server.Transfer
你可以在另一个页面以对象属性的方式来存取显示的值。当然你需要额外歇一歇代嘛以创建一些属性一边可以在另一个页面访问它。
优点:简介,面向对象。Context.Handler来获取前一个页面实例对象的引用。@PreviousPageType
跨页面传送新功能,用于批定快页面的传送过程起始于哪个页面。
PostBackUrl
利用某些控件的属性PostBackUrl
Cookies
Cookies是存放在客户端的,而Session是存放在服务端的。利用Request对象来实现Cookies传值。
Application
Application[“…”]=…..;Server.Transfer(“……aspx”);
或利用Lock和UnLock实现的
Application.Lock(); ….=Application[“…”].ToString();Application.UnLock();ViewState属性
Cache
文件
- 数据库
参考网址:
ASP.NET页面之间传递值的几种方式
上述变量的区别
ASP.NET的Application、Session、Cookies、ViewState和Cache等变量的区别如下:
- Application是公共的,所有人都能看到。
- Session 私有的,每个客户端都存在不同的Session生存期。
- Cookies是保存在本地的文件,记录短小的信息。除非Cookies过期,否则会一直存在。
- ViewState 用来记录页面中控件的状态,主要在页面间信息传递时用。
- Cache是缓存,用来记录已经执行过的一些数据。目的是加速显示、减少服务器的负担、过期时间可以自己设计的。