温习asp.net基础

关于Request对象

Request对象时HttpRequest类的一个实例.其主要功能从客户端获取数据,使用该对象可以访问任何HTTP请求信息,传递包括有Post()或者get()方法传递参数,cookie和用户验证,由于Request,本人比较关注的是:HttpMethod 获取客户端传递Http数据的方式(get或者post),

Request请求中碰见出现重复的key,此时可以引用NameValueCollection类进行直接获取,方式如下

NameValueCollection NVColl=Request.Form;直接获取表单的所有键值对。

另讨论下NameValueCollection 与HasTable之间的区别 

1.NameValueCollection类集合是基于 NameObjectCollectionBase 类。
但与 NameObjectCollectionBase 不同,该类在一个键下存储多个字符串值(就是键相同,值就连接起来如下例子)。该类可用于标头、查询字符串和窗体数据。
每个元素都是一个键/值对。NameValueCollection 的容量是 NameValueCollection 可以保存的元素数。
NameValueCollection 的默认初始容量为零。随着向 NameValueCollection 中添加元素,容量通过重新分配按需自动增加

2.NameValueCollection与Hashtable的区别
a.引用区别

hashtable:using System.Collections;

NameValueCollection:using System.Collections.Specialized;

b.键是否重复

NameValueCollection:允许重复.

HashTable是键-值集合,但键不能出现重复.

关于application与Session对象

1:Application:application是全局对象,程序发布到服务器被访问第一次就会创建,而后的访问不会重复创建,但是不会消失,全局对象会一直存在,很多访问者都可以之际调用。当服务器关闭或者出现宕机时候则会将application对象消亡。

2:Session:用户与服务器端进行会话,每一个用户访问session都会有一个独特的sessionID,这是服务器与用户之间互相认证的标志,当用户关闭网页或者注销时候,session会自动释放掉。一般情况下session的一些重要信息,比如:用户认证账号密码,购物车都会以cookie的形式存入。补充session的不足。

Application知识点:

application是ApplicationState类的一个实例对象,一个网站可能有多个Application对象。可以创建通用用户使用的application对象,还有管理员所使用的特殊application对象。因为公共的Application具有共享的特性,所有若存在修改公共变量的可能性,此时需要使用lock(),和unlock()方法。

Application对象具有Application_OnStart和Application_OnEnd俩个事件。前者是创建session之前发生的。此时只有Application和Server内置对象可以使用,其他的session,Response,Request对象不能进行访问。Application_OnEnd可以去注销Application里面的对象。

Session知识点:

每一个网页访问都会创建一个session,session有居多用途,比如购物车,或者其他重要的信息。访问一个页面的sesion都不是一样的,所以需要每个页面都在加载的时候保存一下Session,这样确保使用购物车的时候sessionid不变

Cookie问题

浏览器 使用脚本读取cookie

aspx.net

浏览器读取cookie可以直接通过Request.cookies,得到键值对

浏览器输出cookie 三步骤

1:必须声明httpCookie 实例,

2:给实例对象赋值。

3:Response.cookie.add(httpCookie实例对象)

posted @ 2012-03-08 12:18  对象未引用到实例  阅读(257)  评论(0编辑  收藏  举报