Web内置对象 跨页面传值
内置对象:
1.QueryString - 地址栏数据拼接 get传值方式
格式:?key=value优点:简单好用,速度快,不消耗服务器内存。 缺点:只能传字符串,保密性不好,长度有限
Request - 获取请求对象
Request["key"] - 默认返回的就是string类型
Response - 响应请求对象
Response.Redirect(path); 页面重定向,path是重定向的地址
Response.Write(" aaaa "); 输出内容,一般用于输出JS语句。
Server.Transfer(path);页面重定向
Session相对全局对象
Session是非常安全的,因为它存在于服务器的内存中,取数据也是最快的
但是,Session不要滥用,因为会造成服务器内存溢出,导致服务器崩溃
Session里面不要放大东西,如果不用那么就会造成资源浪费
Session生命周期:只要页面有提交活动,则Session的所有项都会保持,页面在20分钟(默认配置)内没有任何提交活动时Session会失效。Session内存储的多个数据项是整体失效的。
创建 Session["user"] = 值;
Session["user"]是object类型使用时转成相应的类型
Cookies
会话Cookies的生命周期是:20分钟
Cookies是存在用户电脑的硬盘上
创建 Response.Cookies["user"].Value =值;
取值
if (Request.Cookies["user"] != null)//先判断cookies有没有内容
{
Label1.Text = Request.Cookies["user"].Value;
}
else// 没有内容
{
Response.Redirect("Default.aspx");
}
持久Cookies,保存时间由网站代码来设置
Response.Cookies["user"].Expires = DateTime.Now.AddDays();
如果使用Cookies必须要存放汉字 在别的页面是不显示的 需要特定的编码方式
//创建Cookie ,用UrlEncode方法,TextBox1.Text需要被编译的内容,System.Text.Encoding.GetEncoding("utf-8")编码方式
Response.Cookies["as"].Value = HttpUtility.UrlEncode(TextBox1.Text, System.Text.Encoding.GetEncoding("utf-8"));
//取值 ,用UrlDecode方法
Label1.Text = HttpUtility.UrlDecode(Request.Cookies["as"].Value, System.Text.Encoding.GetEncoding("utf-8"));
Application
它是全局对象,全局只有这一个对象
只要被创建出来,所有人取的值都是一样的
生命周期:永久
保存位置:服务端
Application["key"] 是所有的用户获取这个key里面的值都是一样的, 没有保存周期,他会一直保存着, 通常用作版本号
赋值:Application["key"]=值;
取值:Application.Get("key");
ViewState:记录上一个页面的信息
ViewState 属性提供一个字典对象,用于在对同一页的多个请求之间保留值。这是页用来在往返行程之间保留页和控件属性值的默认方法。在处理页时,页和控件的当前状态会散列为一个字符串,并在页中保存为一个隐藏域或多个隐藏域(如果存储在 ViewState 属性中的数据量超过了 MaxPageStateFieldLength 属性中的指定值)。当将页回发到服务器时,页会在页初始化阶段分析视图状态字符串,并还原页中的属性信息。也可以使用视图状态来存储值。在默认情况下,ViewState不被加密,并且发生服务器-客户端数据传输。
ViewState的关键特性有:存储于页面上,与会话且与页面相关,被序列化,默认发生服务器-客户端传输,默认不被加密。
至于在什么样的情况下ViewState不发生服务器端-客户端传输,或者被加密,我们将在后面的章节中予以讲述。
ViewState虽然不能够跨页面共享数据,但是在同一个页面里,可以用于在对同一页的多个请求之间保留值。
Web内置对象 跨页面传值的更多相关文章
- web内置对象
内置对象,宿主对象,自定义对象的区别? 内置对象: 系统所提供的对象:Object,Array,Math,Date等等. 宿主对象: JS所运行的环境提 ...
- webform 内置对象(页面间传值)
QueryString/URL传值 页面名后面加?变量名=值 有点:不占服务器内存. 缺点:保密性差:传递字符串长度有限. Response --相应请求对象 Response.Redirect ...
- Webform(内置对象-Response与Redirect、QueryString传值、Repeater删改)
一.内置对象(一)Response - 响应请求对象1.定义:Response对象用于动态响应客户端请示,控制发送给用户的信息,并将动态生成响应.Response对象只提供了一个数据集合cookie, ...
- C#开发学习——.net C#中页面之间传值传参的方法以及内置对象
1.QueryString是一种非常简单的传值方式,他可以将传送的值显示在浏览器的地址栏中.如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法.但是对于传递数组或对象的话,就不能 ...
- java web学习总结(二十五) -------------------JSP中的九个内置对象
一.JSP运行原理 每个JSP 页面在第一次被访问时,WEB容器都会把请求交给JSP引擎(即一个Java程序)去处理.JSP引擎先将JSP翻译成一个_jspServlet(实质上也是一个servlet ...
- 在jsp中常用的内置对象(5个)小总结和两种页面跳转方式(服务器端调转、客户端跳转)的区别
jsp中常用的几个内置对象: 一.request对象 主要作用: (1)获取请求页面的信息 比如:request.getParameter("参数名"); (2)获取客户端 ...
- jsp页面元素和内置对象
java server pages其根本是一个简化的servlet设计.实现了在java当中使用html标签.javaEE标准 一.页面元素 1.静态内容 html.js.css相关标签元素. 2.指 ...
- JSP中的内置对象和Struts中的Web资源的详解
JSP中的内置对象有如下几种: request :继承于HttpServletRequest, HttpServletRequest继承ServletRequest, 获得的Request对象的方法: ...
- Java Web学习总结(16)——JSP的九个内置对象
一.JSP运行原理 每个JSP 页面在第一次被访问时,WEB容器都会把请求交给JSP引擎(即一个Java程序)去处理.JSP引擎先将JSP翻译成一个_jspServlet(实质上也是一个servlet ...
随机推荐
- 基于ajax与msmq技术的消息推送功能实现
周末在家捣鼓了一下消息推送的简单例子,其实也没什么技术含量,欢迎大伙拍砖.我设计的这个推送demo是基于ajax长轮询+msmq消息队列来实现的,具体交互过程如下图: 先说说这个ajax长轮询,多长时 ...
- F.I.S初探(前端工程化)
云笔记:http://note.youdao.com/share/?id=7c4a2dcf118f0ad7bb52a36aaee46a7a&type=note 一.初识FIS 在做项目中遇 ...
- .NET的Actor模型:Orleans
Orleans是微软推出的类似Scala Akka的Actor模型,Orleans是一个建立在.NET之上的,设计的目标是为了方便程序员开发需要大规模扩展的云服务, 可用于实现DDD+EventSou ...
- Azure Redis Cache
将于 2014 年 9 月 1 日停止Azure Shared Cache服务,因此你需要在该日期前迁移到 Azure Redis Cache.Azure Redis Cache包含以下两个层级的产品 ...
- Cisco VPN can't work in Win8
Goto HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CvirtA Change DisplayName to "Cisco ...
- Golang与C#之switch区别
Golang与C#之switch区别 Go是Google开发的一种编译型,可并行化,并具有垃圾回收功能的编程语言. C#是微软公司发布的一种面向对象的.运行于.NET Framework之上的高级程序 ...
- 《Entity Framework 6 Recipes》中文翻译系列 (41) ------ 第七章 使用对象服务之标识关系中使用依赖实体与异步查询保存
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 7-7 标识关系中使用依赖实体 问题 你想在标识关系中插入,更新和删除一个依赖实体 ...
- iOS-Xcode使用技巧
一.快捷键的使用 经常用到的快捷键如下: 新建 shift + cmd + n 新建项目 cmd + n 新建文件 视图 option + cmd + 回车 打开助理编 ...
- LINQ系列:Linq to Object投影操作符
投影是指在将序列中的元素转换为一个自定义形式的操作.投影操作符Select和SelectMany用于选择出赋予了适当功能的值.SelectMany操作符可以处理多个集合. LINQ表达式语法: 1. ...
- VS 2015 Enterprise第二大坑
前言 继上篇文章之后,你会继续跌进大坑,这个坑困扰我一上午,同时也会让你大跌眼镜,如果你遇到了,那么恭喜你提升自身能力和解决能力的时机到了,当然你可以通过本文继续少走不必要的弯路[我也是无意中发现的捷 ...