asp .Net 基础知识复习(二)


一、ASP.NET的主要优势

  1. 有丰富的资源,利用控件快速开发程序,开发成本低
  2. 代码后置,方便分工合作

  后来由于ASP.NET 开发出来的程序稳定性不好,微软就重新推出了MVC


 

二、ASP.NET的运行机制 

  1. 客户端发送HTTP请求,通过DNS解析成一个IP
  2. 服务器的IIS接收IP请求,对其请求的文件进行判断是静态文件(.html  .jpf  .jif等)还是动态文件(.aspx   .master   .ascx  .asmx等)

如果是静态文件,IIS自己处理,找到文件发送给客户端;

如果是动态文件,将界面代码和后台代码进行合并,编译,实例化,得到Page对象 页面的生命周期开始  init 初始化  Load 加载  验证  Render 呈现(生成HTML源码)   将HTML源码发送给客户端浏览器  浏览器解释HTML 得到页面


 

 三、系统对象

1、ASP.NET中常用的系统对象

  Page 对象:提供对当前页面对象的访问,控制页面的行为;类型:System.Web.UI.Page

  Response 对象:输出信息传给客户端;类型:System.Web.HttpResponse

  Request 对象:输入信息到服务器;类型:System.Web..HttpRequest

  Server 对象:提供对服务器上方法和属性的访问;类型:System.Web.HttpServerUtility

  Session 对象:会话期状态保持对象,用于跟踪单一用户的会话;类型:System.Web.SessionState.HttpSessionState

  Cookie 对象:客户端保持回话信息的一种方式

  Application 对象:作用于整个程序运行期的准柜台对象;类型:System.Web.HttpApplicationState

 2、(1)Page 对象

    Page是Page类对象,代表一个Web窗体,它充当页面中包含的所以服务器控件的一个外围的命名容器

    常用属性:Title  获取或设置网页的标题

           IsPostBack  获取一个值,用于指示该页面是否正为响应客户端回发而加载获知是否被首次加载和访问

         IsValid      获取一个值,用于指示该页面验证是否成功

  (2)Response 对象

    服务器对客户端响应的集合。

    常用属性:Write()  直接在页面上输出内容

           Redirect()  重定向到另一个页面

  (3)Request 对象

   读取浏览器已经发送的内容,以使ASP.NET能够读取客户端在Web请求期发送的Http值

    常用属性:QueryString["对象名"]    获取通过URL路径传来的数据(问号传值)

    例如:

    窗体1

    

    窗体2

    

    Form       获取通过表单提交传输的数据

    ServerVariables    获取Web服务器变量的集合

    Params     以上3种传输的内容都可以使用该属性获取

Page 对象、Response 对象、Request 对象都是不要声明就可以使用的内置对象

 

  (4)Server 对象

  常用属性:

    MapPath()    获得文件的物理路径

    Execute()     执行其他页,返回执行结果

           Transfer()     终止当前页的执行,并在当前请求中执行其他页

    HtmlEncode()   编码字符串,使其在浏览器中显示与原字符串一致

           HtmlDecode()   对使用 HtmlEncode 编码的字符串结果进行编码

    UrlEncode()    编码字符串,使其符合URL地址的格式的要求

    UrlDecode()    对使用 UrlEncode 编码的字符串结果进行编码

    例如:

      

  (5)Session 对象

    <1>、定义:存储会话中数据的对象,同样以键值字典的方式访问

    <2>、Session对象的使用:

      Session["对象名"]=值;

      Session("对象名",值);

      Session变量的有效期,如果以后两次访问Session变量的时间间隔超过有效期,服务器就自动释放该变量,默认20分钟。

      Session.Timeout=30    设置有效期

      Session.Abandon();     删除所以

      Session.Clear();      移除所有

      Session.Remove(对象名)       移除回话集合中的项

     Session 简单来说,就是服务器给客户端的一个编号,有若干个用户同时访问一个服务器的网站,当每个用户首次与这台服务器建立连接时,它就与这个服务器建立了一个Session,同时服务器会自动分配一个SessionID,用以标记这个用户的唯一身份,这个SessionID是由服务器随机产生的一个24个字符组成的字符串。

      <3>、使用场合:  购物车,等

   (6)Cookie 对象

      Cookies 一般用于长期保存与用户相关的少量信息,如 记住密码的功能;Cookie是一段文本,伴随着请求和响应在服务器和客户端之间来回传输

    Response.Cookies["Username"].Value="das";     设置

    Response.Cookies["Username"].Expires=DateTime.Now.AddDays(1);     设置Cookie中保存Username的值有效期为1天

    string user=Request.Cookies["Username"].Value;   得到

   第二种方式:

    HttpCookie  hcCookie=new HttpCookie("UserName","张三");

    hcCookie  Expires=DateTime.Now.AddMinutes(10);       过期时间为10分钟

    Response.Cookies.Add(hcCookie);

  (7)  Application 对象

    用于存储应用程序级别的数据,用于存储页面访问的次数

    Application  对象的重要属性:

    Lock:锁定对Application 对象的访问

    UnLock:取消对 Application 对象的访问锁定

  当页面中需要对保存在Application 对象中的数据进行修改时,必须先使用Lock 方法锁定访问再修改,修改完毕后立即使用UnLock 方法解除访问锁定。如下:

     Application.Lock();
            Application["visits"] = (int)Application["visits"] + 1;
            Application.UnLock();
            Response.Write("<br/>您是第" + Application["visits"].ToString() + "位访客!");


 

四、Session、Cookie、Applicetion  三者区别

对象名 独立性 保存位置 支持的数据类型 安全性
Session 每个用户都是独立的 保存在服务端 保存任何类型的数据 安全
Cookie 每个用户是可以共享的 保存在客户端 只能是文本类型 不安全
Application 每个用户都是独立的 保存在服务端 保存任何类型的数据 安全

 

 

 

 

posted @ 2013-09-04 21:58  @菲儿  阅读(238)  评论(0编辑  收藏  举报