一、内置对象

(一)Response - 响应请求对象
1.定义:Response对象用于动态响应客户端请示,控制发送给用户的信息,并将动态生成响应。Response对象只提供了一个数据集合cookie,它用于在客户端写入cookie值。若指定的cookie不存在,则创建它。若存在,则将自动进行更新。结果返回给客户端浏览器。
2.方法
(1)Redirect
用法:Response.Redirect("url")
作用是在服务器端重定向于另一个网页
(2)Write
功能:向客户端发送浏览器能够处理的各种数据,包括:html代码,脚本程序等
用法:Response.Write("")输入字符串在界面里显示,输入<script>alert('')</script>弹出对话框
(二)Request - 获取请求对象
Request["key"] - 默认返回的就是string类型
来获取传递过来的值,Request对象的作用是与客户端交互,收集客户端的Form、Cookies、超链接,或者收集服务器端的环境变量。

(三)Session  相对全局对象

在不同的浏览器之间传值,像银行之类的网站为了安全把用户名密码保存在session里面。每一台电脑访问服务器,都会是独立的一套session,key值都一样,但是内容都是不一样的。

赋值:Session["key"] = 值;

在另一个网页取值:首先先要判断Session["key"] 是不是null,不是的话取值,否则定向到原网页

string a = Session["key"];

优缺点:

Session是非常安全的,因为它存在于服务器的内存中,取数据也是最快的;但是,Session不要滥用,因为会造成服务器内存溢出,导致服务器崩溃(为了避免同一账号短时间大量访问所以设置了看不清的验证码)
Session里面不要放大东西,如果不用那么就会造成资源浪费。

Session生命周期:20分钟(当一个账号关闭游览器后,仍然会在服务器走完这20分钟,用户的每一个会导致页面刷新的操作都会使这20分钟重新计时)

很多网站,特别是涉及到moneyde ,用户长时间不操作之后都要重新登入就是因为他的生命周期。

ps:当一个用户关闭游览器然后再用这个游览器登入相同的账号后,连接就不是原来的连接了,就像是打客服电话,

用同一部手机拨打同一个客服电话,对面接电话的就不一定是同一个人了。

(四)Cookies

赋值:   Response.Cookies["key"].Value =值;

取值: Request.Cookies["key"].Value;

与Session比较:

相同点:每一台电脑访问服务器,都会是独立的一套session或者Cookies,key值都一样,但是内容都是不一样的。

不同点:●Session的保存位置是保存在服务器内存上,Cookies保存在用户硬盘上

●Session没有持久的,在不对页面进行任何操作的情况下,它的保存周期就是20分钟;Cookies可以持久也可不持久,取决于用户

设置生命周期: Response.Cookies["key"].Expires = DateTime.Now.AddDays(7);//保存7天

问题:如果传的是中文会乱码

解决方法:输入的文字用特定的编码方式编码。然后用该方式解码

string a = HttpUtility.UrlEncode(值, System.Text.Encoding.GetEncoding("utf-8"));
Response.Cookies["key"].Value = a;
Response.Redirect("Default2.aspx");
if (Request.Cookies["user"] != null)          解码
{
string a = HttpUtility.UrlDecode(Request.Cookies["key"].Value, System.Text.Encoding.GetEncoding("utf-8"));
Label1.Text = a;
}

(五)Application,比如说版本号,所有人获取的都是同一个东西,使用范围较小。

它是全局对象,全局只有这一个对象
只要被创建出来,所有人取的值都是一样的
生命周期:永久
保存位置:服务端

赋值:Application["key"]=值;
取值:Application("key");

(六)ViewState(了解)

可以理解成为病例

类似于中间过程,由于网页的不固定性,点击按钮会刷新,控件赋得值借助viewstate保存,把刷新前的值保存成专门代码。刷新后再赋值给控件

二、Repeater的Command操作(不常用)

1、ItemCommand事件 :在Repeater中所有能触发事件的控件,都会来触发这一个事件

后台创建:在Page_Load中  Repeater1.ItemCommand +=  ,然后双击Tab键创建

2、CommandName : 判断点击的是什么按钮,

 后台调用:e.CommandName

3、CommandArgument : 触发事件所传递过来的主键值数据,放在这里面 界面值绑定时要用  单引号 !!!!!!

后台调用:e.CommandArgument

已删除为例

   <asp:Button ID="Button1" CommandName="Delete" CommandArgument=<%#Eval("UserName") %> runat="server" Text="删除" />  //前台代码
--------------------------------------------------------------------------------------
后台代码
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Repeater1.DataSource = new UsersData().Select();
Repeater1.DataBind();
} Repeater1.ItemCommand += Repeater1_ItemCommand;
} void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
{
if (e.CommandName == "Delete")
{
new UsersData().Delete(e.CommandArgument.ToString());
} } }

内置对象session ,cookic,Application,ViewState的更多相关文章

  1. 内置对象session和application的作用是什么?

    Jsp调用Javeabean命令UseBean中有Scope设置,一般有Application session page等设置,Page就是每页重新产生usebean中的javabean新对象,一般情 ...

  2. asp.net内置对象session和cookie

    1.各个机器的session对象不同,不同浏览器之间不通用(换个浏览器,是个新的session). 2.session状态对象起始于网页打开,终止于网页关闭,生命周期有限. 3.关闭浏览器/超时的情况 ...

  3. Jsp内置对象-session

    session内置对象介绍 个人理解:session因为是唯一的, session是与请求有关的会话期,它是java.servlet.http.HttpSession类的对象,用来表示和存储当前页面的 ...

  4. JSP内置对象——session对象

    举个购物流程的例子: 这整个购物过程,它是属于一次回话.那么这个session是保存在服务器内存当中,并且它保存着不同用户对应的session,一个用户对应一个session.看下面这幅图: 从图中可 ...

  5. JSP内置对象——session

    sessionsession表示客户端与服务器的一次会话Web中的session指的是用户在浏览某个网站时,从进入网站到浏览器关闭所进过的这段时间,也就是用户浏览这个网站所花费的时间从上述定义中可以看 ...

  6. JSP内置对象Session

    创建和获取客户的会话 setAttribute()与getAttribute() session.setAttribute(String name , Object obj) 如session.set ...

  7. jsp内置对象-session对象

    一.session概述 隐含对象session是javax.servlet.http.HttpSession接口实现类的对象,用于保存用户的状态信息. 在web开发中,服务器为每个用户浏览器创建一个会 ...

  8. Webform 内置对象 Session对象、Application全局对象,ViewState

    Session 每台电脑访问服务器,都有独立的session,key值都一样,内容不一样. 1.session保存在服务器上. 2.session没有持久性,保存周期就是20分钟. 重点: sessi ...

  9. JSP内置对象--session对象(getId(),getCreationTime(),getLastAccessedTime(),isNew(),invalidate(),setAttribute(),getAttribute())

    session对象是javax.servlet.http.HttpSession接口的实例,但是不像HttpServletRequest或HttpServletResponse一样,有父接口,他没有父 ...

随机推荐

  1. 《Linux内核设计与实现》读书笔记 第四章 进程调度

    第四章进程调度 进程调度程序可看做在可运行太进程之间分配有限的处理器时间资源的内核子系统.调度程序是多任务操作系统的基础.通过调度程序的合理调度,系统资源才能最大限度地发挥作用,多进程才会有并发执行的 ...

  2. Java NIO1:I/O模型概述

    I/O模型 在开始NIO的学习之前,先对I/O的模型有一个理解,这对NIO的学习是绝对有好处的.我画一张图,简单表示一下数据从外部磁盘向运行中进程的内存区域移动的过程: 这张图片明显忽略了很多细节,只 ...

  3. R in Action 读书笔记(6)基本图形

    MindMapper原文件

  4. 去年做了什么?OA。

    假前一天下午被经理和PM叫上楼,首要一个问题是我去年干了啥,我大致支吾了几句描述了下,一时也说不出个大概.后面就是一片悠长的面谈,什么没达到期望,公司状况不好.......哦,这是KPI评价啊,剩下的 ...

  5. ASP.NET MVC 从零开始 - Web.config

    这篇文章是从我的 github 博客 http://lxconan.github.io 导入的. 在上一篇中,我们从零开始创建了一个非常简单的 ASP.NET MVC 应用程序.接下来,你是不是期望我 ...

  6. EF:自定义Oracle的映射类型

    oracle在DB First模式下,int类型的字段会自动映射为decmial类型的属性. 我们可以通过自定义类型映射进行“纠整”. 在app.config 自定义映射规则: <oracle. ...

  7. X509 证书生成

    X509证书介绍X.509 是由国际电信联盟(ITU-T)制定的数字证书标准,相信这是人尽皆知的了,目前X.509证书据我所知有三个版本,.net中使用的是x.509-2,X.509-2 版引入了主体 ...

  8. iOS开发--应用崩溃日志揭秘(二)

    场景 4: 吃棒棒糖时闪退! 用户邮件说, “当rage master吃棒棒糖时应用就闪退…” 另一用户说, “我让rage master 吃棒棒糖,没几次应用就闪退了!”崩溃日志如下: Incide ...

  9. Python学习路径及练手项目合集

    Python学习路径及练手项目合集 https://zhuanlan.zhihu.com/p/23561159

  10. java 成长之路

    分享总结 title: java 成长之路 tags: grammar_cjkRuby: true 经验差异 1-3年 要求 建议 3-5年 建议 5年+ 经验差异 最近一年比较忙,经历了创业公司的倒 ...