• Web端 session cookies Application viewstate


    URL传值/QueryString
    1、不占用服务器内存
    2、保密性差,传递值的长度有限

    因为  上篇文章 保密性差,长度有限   传值有限只能传string类型的值

    这篇文章学的知识是

    session 

    赋值

    string s=TextBox1.Text;

    session["aa"]=s;              //  aa只是传值名   也可以用别的传值名 接受用你传值的名

    Response.Deriect("Default.aspx");

    取值

    Label1.Text=session["aa"].tostring();

    假设  有个学生类传值

    Student s=new Student();

    s.name="张三";

    s.sex=true;

    session["aa"]=s;

    Response.Dedirect("Default.aspx");

    接受

    Student  s=session["aa"]  as Student;

    Label1.text=s.name;

    存贮在服务端,占用服务器内存
    很好用,速度很快
    不要滥用,容易溢出

    生命周期:20分钟,每一次新的请求都会刷新这个时间

    浏览器一旦关闭(是同一个浏览器不是页面),那么会断开此条Session的连接

    Cookie
    与Session一模一样
    不一样的地方:Cookies是存储在客户端的

    传值

    string s=TextBox1.text;

    Response.Cookies["aa"].value=s;

    取值

    if(Request.Cookies["aa"]!=null)       假设没有接受值  设置对象为null

    {

    string ss=Request.Cookies["aa"].value;

    Label1.text=ss;

    }

    与Session一模一样
    不一样的地方:Cookies是存储在客户端的

    Session很安全,但是消耗服务器内存
    Cookies,不消耗服务器内存,存在客户端上,但是有可能被访问

    持久cookies

    假设期限为3天

    Request.Cookies["aa"].Expires=Datetime.Now.Adddays(3);

    退出  期限不抱持            期限为负数

    Request.Cookies["aa"].Expires=Datetime.Now.Adddays(-10); 

    Application

    传值和session一样

    Application["aa"]=TextBox1.text;

    Response.Dedirect("Default.aapx");

    取值

    string s=Application["aa"].tostring();

    Label1.text=s;
    存贮在服务器端,占用服务器内存(只要服务器不关闭或者或者重启)
    生命周期:永久(可以当临时数据库用)

    所有人访问的都是这一个对象

  • 相关阅读:
    关于金蝶K3服务器更换硬件重新注册问题
    vCenter 忘记网页登录密码 / 重置密码
    首次使用docker有感
    NBI可视化平台快速入门教程(一)数据准备
    Mac版VSCode安装教程
    mysql学习笔记(二)
    mysql学习笔记(三)
    mysql学习笔记(四)
    vs版本对应关系
    TensorRT 记录
  • 原文地址:https://www.cnblogs.com/zhangwei99com/p/6891668.html
Copyright © 2020-2023  润新知