• asp.net内置对象(Request/Response/Application/Cookies/Session/Server/Trace)


    asp.net之七内置对象介绍

    ·Request:从浏览器获取信息

    ·Response:向浏览器输入信息

    ·Application:为所有用户提供共享信息的手段

    ·Cookies:保留客户端信息,保留在客户端

    ·Session:保留客户端信息,保留在服务器端

    ·Server:获取服务器端信息

    ·Trace:提供在HTTP页输出自定义跟踪和信息

    一.Request内置对象:

      1.所属命名空间:System.Web -> HttpResponse类;

      2.对象属性:

        1>BufferOutput:是否在清除缓存之后再发送(true/flase)

        2>Cache:获取Web页面的缓存策略(保密信息,过期时间等)

        3>Charset:获取或设置HTTP字符集

        4>IsClientConnected:获取一个值,通过该值指示客户端是否仍连接在服务器上

      3.对象方法:

        1>Write:将指定的字符串或表达式的结果写到当前的HTTP输出

        2>End:停止页面的执行并得到相应的结果

        3>Clear:在不将缓存中的内容输出的前提下,清空当前也得缓存(仅适用缓存输出是,才能适用Clear);

        4>Flush:将缓存中的内容立即显示出来;(必须将Buffer属性设置为true);

        5>Redirect:使浏览器立即重定向到程序制定的URL;

      案例:

    <%Response.Write("缓存清除了!");%>
    
    protected void Page_Load(object sender, EventArgs e)
            {
                Response.BufferOutput = false;//为true时只会显示“缓存清除了!”(BufferOutput属性)
                Response.Write("1111"+"<br>");//Write方法
                Response.Clear();//Clear方法
            }

    二.Request对象

      1.对象属性:

        1>QueryString:获取HTTP查询字符串变量集合(可定义参数或获取参数值,如例1)

        2>Path:获取当前请求的虚拟路径

        3>UserHostAddress:获取远程客户端的IP主机地址

        4>Browser:获取有关正在请求的客户端的浏览器功能的信息

        5>Form:获取窗体变量的合集

        6>Url:获取当前请求的URL信息

      2.对象方法:

        1>BinaryRead:执行对当前输入流进行指定字节数的二进制读取;

        2>MapPath:为当前请求将请求的URL中的虚拟路径映射到服务器上的物理路径

    实例1:

    <body>
        <form id="form1" runat="server">
            <div>
                <asp:Label ID="RequestString" runat="server" />
            </div>
        </form>
    </body> 
    
    protected void Page_Load(object sender, EventArgs e)
            {
                if(Request.QueryString["m"] != null && Request.QueryString["m"].ToString() != "")//使用QueryString定义参数m
                {
                    RequestString.Text = Request.QueryString["m"].ToString();//使用QueryString获取参数值
                }
                else
                {
                    RequestString.Text = "00000000";
                }
            }

    三.Application对象:

      1.命名空间:System.Web -> HttpApplicationState

      2.对象属性:

        1>AllKeys:获取HttpApplicationState集合中的访问键;

        2>Count:获取HttpApplicationState集合中的对象数;

      3.对象方法:

        1>Add:新增一个新的Application对象变量

        2>Clear:清除全的的Application对象变量

        3>Get:使用索引关键字或变量名称得到变量值

        4>GetKey:使用索引关键字获取变量名称

        5>Lock:锁定全部的Application变量

        6>Remove:使用变量名称删除一个Application对象

        7>RemoveAll:删除全部的Application对象

        8>Set:使用变量名更新一个Application对象变量的内容

        8>UnLock:解除锁定的Application变量

    例1:http://www.cnblogs.com/HuiTai/p/huitai_Net3.html(一位大佬的博客包含两个实例)

    例2:计数器

    application.aspx: 
    protected void Page_Load(object sender, EventArgs e)
            {
                try
                {
                    Application["user_count"] = 1;//创建Application全局变量
                    Response.Write("赋值全局变量user_count");
                }
                catch (Exception ex)
                {
                    Response.Write(ex.Message);
                    throw;
                }
            }
    
    tongji.aspx:
         protected void Page_Load(object sender, EventArgs e)
            {
                try
                {
                    Response.Write("统计在线人数:"+Application["user_count"]);
                    Application["user_count"] = Convert.ToInt32(Application["user_count"])+1;//访问一次页面人数+1
                }
                catch (Exception ex)
                {
                    Response.Write(ex.Message);
                    throw;
                }
            }

     四.Session对象:

      1.对象命名空间:System.Web -> HttpSessionState

      2.对象属性:

        1>Count:获取绘画状态集合中Session对象个数

        2>TemeOut:获取并设置在会话状态提供程序终止会话之前各请求之间所允许的超时期限

        3>SessionID:获取用户标识会话的唯一会话ID

      3.对象方法:

        1>Add:新增一个Session对象

        2>Clear:清除会话状态中的所有值

        3>Remove:删除会话状态集合中的项

        4>RemoveAll:清除所有会话状态值

  • 相关阅读:
    ng-深度学习-课程笔记-1: 介绍深度学习(Week1)
    java发送http请求和多线程
    Spring Cloud Eureka注册中心(快速搭建)
    Spring boot集成Swagger2,并配置多个扫描路径,添加swagger-ui-layer
    springboot在idea的RunDashboard如何显示出来
    Oracle 中select XX_id_seq.nextval from dual 什么意思呢?
    mysql类似to_char()to_date()函数mysql日期和字符相互转换方法date_f
    MySQL的Limit详解
    HikariCP 个人实例
    NBA-2018骑士季后赛
  • 原文地址:https://www.cnblogs.com/jingxuan-li/p/7471676.html
Copyright © 2020-2023  润新知