内置对象

一、分页效果

    1、get传参:通过URL后面加问号给出要传的参数名称和参数内容,如:[?page=3]

       http://www.xxx.com/RNewsM.sapx?page=1    //在打开RNewsM.sapx页面是get传参方式传递page等于1的值传给该页面。

    2、获取get传参方式传过来的参数:

       pageIndex = Request.QueryString["page"] == null ? 1 : Convert.ToInt32(Request.QueryString["page"].ToString())

       其中:Request.QueryString["page"]   //获取get传参方式穿过来的[page]的值。

    3、SELECT ROW_NUMBER() OVER (ORDER BY NewsId) AS RowNumber FROM RNews

                                          //获得RNews中以NewsId排序后的记录号,该记录号是分页时的依据。

       如:SELECT TOP 10 * FROM

                   (SELECT ROW_NUMBER() OVER (ORDER BY ZP_CHKFLD) AS RowNumber,* FROM ZP_BM_CHECK) A

                    WHERE RowNumber > 10*(3-1)

                --- 子查询中先获得的ZP_BM_CHECK表的带记录号的记录集,以此记录集为基表再次查询一页要显示的记录内容。

                --- 10*(3-1)的10是每页中要显示的记录数,3是当前是第三页,-1是页码的偏移量。

                --- TOP 10表示只读取满足条件的前十条记录。

二、保存状态

    1、Session的实用方法

       Session["username"]=username;        //登录后保存用户名

       if (Session["username"] == null) //打开页面时判断是否登录

       {

            Response.Redirect("Login.aspx");    //没有登录就返回登录页面

       }

       *** Session是保存在服务端的Session池(有Key和Value)之中,请求信息(请求报文)放在Request之中,相应信息(相应报文)放在Response之中,请求报文和相应报文又放在上下文对象Context里面。由服务端发回的key是存储在客户端浏览器的缓存里面的,所以一点关闭页面就失去key,Session是取不到的。

       *** Session在服务器上默认保存20分钟,可以在WEB.CONFIG中修改这个时间。

    2、cookie的实用方法

       Response.Cookies["username"].Value = username;    //设置一个叫username的cookie

       if (Request.Cookies["username"] == null)          //打开页面时判断是有指定cookie

       {

            Response.Redirect("Login.aspx");             //没有指定cookie就返回登录页面

       }

       ** 客户端想服务器端发送请求后,服务端返回cookie的值给客户端,默认情况下(没有设置过期时间的话)该值保存在浏览器的缓存里面。如果设置了cookie的过期时间,cookie保存在客户端的硬盘上,直到过期时间达到或手动删除cookie时才会消失。

posted @ 2015-11-12 22:22  97黄三  阅读(151)  评论(0编辑  收藏  举报