Asp.net内置对象

Asp.net内置对象总结:

1> Session:用于在服务器断保存用户的会话状态,它的运行机制就是当第一次访问的时候到服务器中判断是否存在,也就是sessionID,如果不存在,就创建一个,然后带着sessionID返回客户端,第二次访问的时候就可以根据sessionID或得相关Session的值,会话周期在浏览器打开到关闭!

           Session赋值和获得Session的值:

           Session[“session名称”]=Value

           变量=Session[“session名称”]

           Session.Timeout=20

表示在20分钟内如果用户不进行任何操作,session将过期

Session.Clear();清除当前浏览器进程所有session

Session.Abandon();取消当前会话

Session.Remove("session名称");删除Session集合中某个元素

Session["session名称"]=null; //设置Session集合中的某个元素为空

2> Cookie:用于在客户端保存用户状态。在客户端与服务器之间传值,缺陷就是不太安全,一些敏感的问题最好不要存在Cookie中!而且大部分浏览器只能保存4KB左右,也可以禁用Cookie,Expires用来指定Cookie的有效期,如果不设置的话,就默认为浏览器打开到关闭的时间,设置MaxValue表示永远不过期!

          下面来看看Cookie的两种用法:

          1>

            为Cookie赋值

            Response.Cookies["cookie名字"].Value = "admin";

为Cookie设置有效期

            Response.Cookies["cookie名字"].Expires = DateTime.Now.AddHours(20);

            获得Cookie的值

            Request.Cookies["cookie名字"].Value

            清除Cookie

            Response.Cookies.Clear;

            Response.Cookies["Cookie名字"].Expires = DateTime.Now.AddDays(-1);

            Response.Cookies("Cookie名字").Expires = 0;

          2>通用方法

 public void PageCookie(string doim, string key, string value)

      {

        if (Request.Cookies[doim] == null)

        {

            HttpCookie httpCookie = new HttpCookie(doim);

            httpCookie.Values[key] = value;

            httpCookie.Expires = DateTime.Now.AddMinutes(20);

            Response.Cookies.Add(httpCookie);

        }

        else

        {

            HttpCookie httpCookie = Request.Cookies[doim];

            httpCookie.Values[key] = value;

            httpCookie.Expires = DateTime.Now.AddMinutes(20);

            Response.Cookies.Add(httpCookie);

        }

    }

          获得值

             Request.Cookies["user"].Values["username"]

             Request.Cookies["user"]["username"]

          清除值

定义一个和原来一样名字的cookie,然后把有效期设置小点就可以了

            Httpcookie cookie=request.cookies[“cookiename”]

            Cookie.expires=DateTime.Now.addDay(-1);

            Response.cookies.add(cookie);

           判断cookie是否为空

           if (Request.Cookies["username"]!= null)

             {

                this.Label1.Text = Request.Cookies["username"].Value;

             }

3>Application:用户共享所有用户的信息,有限期在服务器打开与关闭的时间段里,用法和session差不多

Application赋值和获得Application的值:

             Application [“Application名称”]=Value

             变量= Application [“Application名称”]

4>Server:   提供了服务器断的一些属性和方法,比如页面的路径和转码等,在这里介绍一下常用的几个方法

           Server.MapPath(string 文件名):获得该文件在服务器的目录

            或者 HostingEnvironment.MapPath("~/files/" + DirID);

             HtmlEncode:用于在页面中显示你要显示的html标签,比如</br>

           HtmlDecode:与HtmlEncode相反,表示对其解码

           UrlEncode:解决在url传值的过程中出现的乱码问题

5>Request:主要是获得客户端的一些请求数据。

           Request. QueryString:获得url或get方式传过来的值

           Request. Form:用于获得post传过来的值,可以达到2M,而get也就是256B

           Request.Params:get和post都可以通过它来获得值,但是效率低,不建议使用

           Request.ServerVariables:用于获得客户端和服务器的一些系统信息;

6>Response:响应客户端

           Request.write():打印

           Response.Redirect(“);重定向

 

Asp.net内置对象大概就这么多了,灵活使用才是最重要的

多思考,多创新,才是正道!
原文地址:https://www.cnblogs.com/shuang121/p/1968754.html