Session:每个独立的浏览器都会创建一个独立的Session,不是一台电脑一个Session

存放位置:服务器上

作用:只要里面有内容,那么这个网站中所有的C#端都能访问到这个变量

优点:安全,速度快,全局访问无限制

缺点:消耗服务器内存资源

特性:Session在20分钟之内如果没有会话操作,则会自动释放

注意:1、不要存大量数据在Session里
2、临时Session取完无用后记得 = null清空它

语法:(1)用Session存值:Session["key名"] = 值;      值,不只是个字符串,可以是对象。   

        string a = "abcde";
Session["aa"] = a;

    (2)从Session取值:类型 变量名 = (强制转换的类型名)Session["key名"]   

if (Session["aa"] != null)
{
Label1.Text = Session["aa"].ToString();
}

    (3)释放Session:释放某个Session:Session["key名"]=null;

          释放所有Session:Session.clear();

          自动释放:20分钟

案例

登录界面,登录成功后转向另一界面并显示“欢迎您XXX”加上当前时间

I,登录界面Default.aspx

protected void Button1_Click(object sender, EventArgs e)
{
if (TextBox1.Text.Length > && TextBox2.Text.Length > )
{
Session["user"] = TextBox1.Text;
Response.Redirect("Default2.aspx");
}
}

II,显示页面Default2.aspx

protected void Page_Load(object sender, EventArgs e)
{
if (Session["user"] == null)//用户名为空,跳转到登陆界面
{
Response.Redirect("Default.aspx");
} if (Session["test"] == null)
{
Session["test"] = DateTime.Now.ToString();
} Label1.Text =" 欢迎您:"+Session["user"].ToString()+"<br/>"; Label1.Text +="&nbsp;" + Session["test"].ToString();
}

Cookie:保存在客户端内存或硬盘上

临时Cookie是存在浏览器内存中的,持久Cookie是存在电脑硬盘上浏览器相关的Cookie目录下的

作用:保存数据信息,只能保存字符串,全局访问

会话Cookie
1、浏览器一关,此次访问一中断
2、没有任何新的提交,20分钟过期
3、手动清楚浏览器Cookie

持久Cookie
1、代码设置过期
2、手动清楚浏览器Cookie

设置Cookie

//新建Cookie对象
HttpCookie cookie_name = new HttpCookie("uid");
//赋值
cookie_name.Value = uid;
//写入到Cookie里面
Response.AppendCookie(cookie_name);

用Cookie存值:Cookie["key名"] = 值;      值,只能是是个字符串。

        string uid = "abcde";
Response.Cookies["aa"].Value = uid;

在使用界面:读取Cookie
Request.Cookies["uid"].Value.ToString();

        if (Request.Cookies["uid"] != null)
{
Label1.Text = Request.Cookies["uid"].Value;
}

案例

登录界面可选择保持登录状态3天,登录成功后转向另一界面并显示“欢迎您XXX”加上当前时间

I,登录界面Default.aspx

protected void Button1_Click(object sender, EventArgs e)
{
if (TextBox1.Text.Length > 0 && TextBox2.Text.Length > 0)
{
      Response.Cookies["user"] = TextBox1.Text; 

       if(CheckBox1.Checked)
        {
          Response.Cookies["user"].Expires = DateTime.Now.AddDays(3);
        }          

      Response.Redirect("Default2.aspx");
     }
  }

II,显示页面Default2.aspx

protected void Page_Load(object sender, EventArgs e)
{
if (Session["user"] == null)//用户名为空,跳转到登陆界面
{
Response.Redirect("Default.aspx");
} if (Session["test"] == null)
{
      Request.Cookies["test"].Value = DateTime.Now.ToString(); 
     }
    Label1.Text =" 欢迎您:"+Request.Cookies["user"].Value.ToString()+"<br/>";
    Label1.Text +="&nbsp;" +Request.Cookies["test"].Value.ToString(); }

跳转页面方式:

1.Response.Redirect("http://www.baidu.com");重定向,可以跳转任何网页
2.Server.Transfer("Main.aspx");只能跳转该网站根目录下的网站

Webform Session、Cookies传值,跳转页面方式的更多相关文章

  1. Webform Session Cookies状态保持

    Request对象的五个集合: ①.QueryString:用以获取客户端附在url地址后的查询字符串中的信息. 例如:stra=Request.QueryString ["strUserl ...

  2. webform基础介绍及页面传值(session,cookie)、跳转页面

    一,IIS 1.首先知道IIS是个什么东西:它是web服务器软件,安装在服务器上,接受客户端发来的请求,并传送给服务器端,然后响应请求并送回给客户端.类似于饭店里的服务员. 2.会安装IIS——控制面 ...

  3. 【2017-05-21】WebForm跨页面传值取值、C#服务端跳转页面、 Button的OnClientClick属性、Js中getAttribute和超链接点击弹出警示框。

    一.跨页面传值和取值: 1.QueryString - url传值,地址传值 优缺点:不占用服务器内存:保密性差,传递长度有限. 通过跳转页面路径进行传值,方式: href="地址?key= ...

  4. WebForm跨页面传值取值、C#服务端跳转页面、 Button的OnClientClick属性和超链接点击弹出警示框

    一.跨页面传值和取值: 1.QueryString - url传值,地址传值 优缺点:不占用服务器内存:保密性差,传递长度有限. 通过跳转页面路径进行传值方式: href="地址?key=v ...

  5. ASP.NET页面传值的几种方式

    页面传值是学习asp.net初期都会面临的一个问题,总的来说有页面传值. 存储对象传值.ajax.类.model.表单等!下面欧柏泰克和大家一起来看看asp.net页面传值方式一般有哪些?常用的较简单 ...

  6. ASP.NET 页面之间传值的几种方式

    开篇概述 对于任何一个初学者来说,页面之间传值可谓是必经之路,却又是他们的难点.其实,对大部分高手来说,未必不是难点. 回想2016年面试的将近300人中,有实习生,有应届毕业生,有1-3年经验的,有 ...

  7. 【ASP.NET MVC系列】浅谈ASP.NET 页面之间传值的几种方式

    ASP.NET MVC系列文章 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操作 ...

  8. ASP.NET页面间传值的几种方式

    ASP.NET页面间传值的几种方式 1.使用QueryString 使用QuerySting在页面间传递值已经是一种很老的机制了,这种方法的主要优点是实现起来非常简单,然而它的缺点是传递的值是会显示在 ...

  9. asp.net中,跳转页面的几种方式

    js方式的页面跳转1.window.location.href方式    <script language="javascript" type="text/java ...

随机推荐

  1. 在桌面程序上和Metro/Modern/Windows store app的交互(相互打开,配置读取)

    这个标题真是取得我都觉得蛋疼..微软改名狂魔搞得我都不知道要叫哪个好.. 这边记录一下自己的桌面程序跟windows store app交互的过程. 由于某些原因,微软的商店应用的安全沙箱导致很多事情 ...

  2. Best code水题之路

    BestCoder 2nd Anniversary: 1001.Oracle There is once a king and queen, rulers of an unnamed city, wh ...

  3. navicat 破解

    首先上官网上下载LINUX版本: http://www.navicat.com/download 下载 navicat110_mysql_en.tar.gz 文件 下载后解压tar文件 tar -zx ...

  4. win32调试打印

    void __cdecl OutputDebugStringF(const char* format ...){ va_list vlArgs; char* stringBuffer=(char*)G ...

  5. SQLServer 2008 R2 对同时含有数字和中文的字段进行排序

    若是数据库中的某一个字段名为bedNO,类型为nvchar,里面有{1,2,3,11,12,23,加2,加3}这些数据. 此时我需要对这些数据进行排序,数字按大小拍前面,汉字按第一个字拼音首字母的顺序 ...

  6. 五种方式让你在java中读取properties文件内容不再是难题

    一.背景 最近,在项目开发的过程中,遇到需要在properties文件中定义一些自定义的变量,以供java程序动态的读取,修改变量,不再需要修改代码的问题.就借此机会把Spring+SpringMVC ...

  7. 剑指Offer-【面试题04:替换空格】

    package com.cxz.question4; /* * 请实现一个函数,把字符串中的每个空格替换成"%20",例如"We are happy.",则输出 ...

  8. vnc远程运行3D游戏

    使用的版本:VNC-5.2.3-Windows.exe   vnc官网 安装的过程中需要输入license key,以下给出一些enterprise license(最大权限的License): K5 ...

  9. 解决MVC4 时间验证Bug

    MVC验证时间控件(my97,时间格式:yyyy-MM-dd HH:mm:ss)  在谷歌浏览器上一切正常.但在火狐和IE 上一直验证不通过 (错误信息:日期格式不对) 猜想是 时间格式的问题..日期 ...

  10. jQuery获取输入框并设置焦点

    $(':input:enabled:visible:first').focus(); $("input:text:visible:first").focus(); 表单元素选择器: ...