标签:
一、分页效果
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时才会消失。
标签:
原文地址:http://www.cnblogs.com/huang3/p/4960468.html