版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第6章 构建网站,6.1 ASP.NET网站综述 6.2 Response对象 6.3 Request对象 6.4 Application对象 6.5 Session对象 6.6 Server对象 6.7 构建网站示例,6.1 ASP.NET网站综述,6.1.1 解决方案和项目 6.1.2 ASP.NET网站布局 6.1.3 网站的组成文件 6.1.4 网站文件类型 6.1.5 关于代码隐藏 6.1.6 网站的状态,6.1.1 解决方案和项目,一个典型的ASP.NET网站由许多文件组成,这些文件包括Web窗体文件(.aspx)、源程序文件(.cs or .vb)、程序集(.exe 或 .dll
2、)、图片(.jpg或 .gif)等。VS2005将这些文件统一组织在一个文件夹中,这个文件夹的所有内容组成一个ASP.NET网站,也称为一个Web应用程序。,6.1.1 解决方案和项目,当新建一个网站(项目)时,VS2005会自动为其创建一个解决方案,并显示在解决方案资源管理器中。所谓解决方案就是将与一项开发任务相关的多个项目组织在一起。,6.1.1 解决方案和项目,新创建的网站项目仅包括ASP.NET保留文件夹App_Data和一个默认网页Default.aspx。解决方案中可以包含多个项目,项目中又可以包含多个文件夹和文件项。 解决方案创建后系统会自动生成解决方案文件(.sln 和.suo
3、),为网站项目自动创建的解决方案文件默认存储在My DocumentsVisual Studio 2005Projects目录下与解决方案同名的子目录中。,6.1.2 ASP.NET网站布局,网站项目由一系列文件组成。开发者可以为这些文件创建任意的目录结构,以方便开发。但是,为了更易于使用和管理网站,ASP.NET保留了某些可用于特定类型内容的文件和文件夹名称。这些文件和文件夹被赋予了特殊的含义和特殊的处理方法。,6.1.2 ASP.NET网站布局,默认页 如果用户在请求的URL中只输入网站名而不指定特定页面,Web服务器会为用户打开默认页(如果它存在的话)。使用默认页将使用户更容易定位到你开
4、发的网站。 使用VS2005创建的网站,默认页为Default.aspx,它保存在网站的根文件夹中。可以使用默认页作为网站的主页,或者在默认页中写入代码将用户请求重定向到真正的主页。,6.1.2 ASP.NET网站布局,应用程序文件夹 如果是一个新创建的网站,在“解决方案资源管理器”中,在网站名称上单击右键,在弹出式菜单中选择“添加ASP.NET文件夹”,在子菜单中可以看到有7个文件夹可供选择。加上系统已经默认创建的App_Data 文件夹,ASP.NET 规定这8个文件夹可用于存放特定类型的内容。,6.1.2 ASP.NET网站布局,6.1.2 ASP.NET网站布局,6.1.3 网站的组成
5、文件,图6-2是本书的应用实例的网站结构,包含了多个用户自定义的文件夹(如images、Uploads)和文件。,6.1.3 网站的组成文件,Global.asax Global.asax文件是ASP.NET网站所拥有的一个全局性文件。该文件中定义了应用程序的全局事件,它保存在应用程序的根文件夹中。 新创建的Global.asax包括5个空的全局事件处理函数:Application_Start、Application_End、Application_Error、Session_Start和Session_End。,6.1.3 网站的组成文件,Web.config ASP.NET网站的配置信息存
6、储在XML文本文件中,名为Web.config。Web.config文件可以出现在ASP.NET应用程序的多个目录中。 新创建网站时,默认情况下只创建必须的文件和文件夹。因此,网站最初并未包含Web.config文件、Global.asax文件等,也没有包含全部的ASP.NET保留文件夹。如果需要,用户可以自行创建。,6.1.4 网站文件类型,6.1.4 网站文件类型,6.1.5 关于代码隐藏,VS 2005版页面代码的默认编写方式为代码隐藏模型,即将内容代码与源代码分开。 所谓内容文件,包括扩展名为.aspx的网页文件、扩展名为.ascx的用户自定义控件和扩展名为.master的母版页文件等
7、。 而代码隐藏文件,则是根据所使用的语言,在内容文件名的基础上(不去掉原扩展名),再加上.cs(使用C#语言)或.vb(使用Visual Basic语言)作为扩展名。,6.1.5 关于代码隐藏,代码的第1行为一个 Page指令,该指令定义网页一级属性。其中: Language属性:指明了默认的编程语言; AutoEventWireup属性:指明控件的事件是否自动匹配; CodeFile属性:指明了隐藏代码文件的文件名; Inherits属性:指明本页面编译后的类名称,该类在源代码文件中实现。 !DOCTYPE指令:用于指定文档类型定义(DTD)。,6.1.6 网站的状态,用户在使用基于Web的
8、应用程序时,所看到的是一个个独立的页面。用户在向服务器请求这些页面并得到响应时,使用的是HTTP协议,HTTP协议是一种无状态的协议。但是,用户在不同的页面上进行不同的操作,这些操作有的是相互关联的。这就需要系统提供一些全局对象来保持页面之间的关联,将各页面组成一个有机的整体。这些对象包括Request对象、Response对象、Application对象、Session对象、Server对象等。,应用程序状态管理,HTTP是无状态协议,必须使用其他技术来保存Web请求之间的信息。ASP.NET提供了多种方法以应对这一缺陷。具体有如下的选项: 隐藏域(Hidden Field) 视图状态(Vi
9、ewState) 查询字符串(Query String) 内置对象 Application Session Cookie),1、使用隐藏域,使用隐藏域(Hidden Field)可以使内容不显示在IDE的设计视图中。 在代码中可以直接访问隐藏域的Value属性。如:Response.Write(HF1.Value);,(HiddenField.aspx),优点: 不需要任何服务器资源; 支持所有的浏览器和客户端设备; 是标准的HTML控件,实现简单。 缺点: 数据直接暴露给用户,潜在的安全风险; 只能存储字符串数据,不支持复杂的数据类型。 如果隐藏域的数据量过大,影响传输速度。,1、使用隐藏域
10、,2、使用视图状态(ViewState),ASP.NET引入了ViewState (视图状态)的概念。 ASP.NET通过ViewState 自动保存控件的状态,对同一页的多个请求间自动保留属性值。视图状态作为页中隐藏域来进行维护。 视图状态中的数据默认是使用base64进行编码的,用户不能直接看到里面的数据。是用来保存其信息的首选。视图状态在每次回发之间保留控件的属性。,(HiddenField.aspx),2、使用视图状态(ViewState),优点: 不需要任何服务器资源(视图状态包含在页面代码的内部结构中); 实现简单,无须用户编程; 视图状态中的值经过哈希计算和压缩,其安全性高于使用
11、隐藏域。 缺点: 由于视图状态存储在页本身,因此如果存储较大的值,用户显示页时的速度会减慢; 仍有潜在的安全风险。,3、查询字符串(Query String),查询字符串是在URL的结尾附加的信息,通常是”?”后面的部分。 利用查询字符串可以很容易地将信息从一页传递到另一页。 查询字符串提供了一种维护某些状态信息的简单方法。,3、查询字符串(Query String),优点: 不需要任何服务器资源; 支持所有的浏览器和客户端设备; 实现简单,ASP.NET完全支持查询字符串方法。 缺点: 有限的容量,大多数浏览器和客户端设备会将URL的最大长度限制为2083个字符。 容易暴露信息,或被人恶意篡
12、改。,ASP.NET的内置对象概述,这些内置对象已经由系统定义,可以直接使用。,ASP.NET的内置对象概述,6.2 Response对象,Response对象封装了Web服务器向Web浏览器发送的HTTP响应消息,Response对象也称为响应对象; Response对象为HttpResponse对象的实例,是ASP.NET自动创建的,因此也称为内置对象。 Response对象用来控制发送给客户端的信息,包括直接发送信息给浏览器、重定向到另一个URL或设置Cookie等。,Response对象的属性 Buffer:获取或设置一个值,该值指示是否缓冲输出,并在完成处理整个响应之后将其发送。 C
13、ookies:获取响应 Cookie 集合。 Expires:获取或设置在浏览器上缓存的页过期之前的分钟数。 IsClientConnected:获取一个值,通过该值指示客户端是否仍连接在服务器上。,6.2 Response对象,Response对象的方法 输出数据: Write(登录成功!); 清除缓冲: Clear(); 网页转向: Redirect(Details.aspx); 停止输出: End(); 输出文件: WriteFile(FileName);,(Response_Write.aspx、 Response_Buffer.aspx,6.2 Response对象,6.3 Request对象,Request对象封装了Web浏览器向Web服务器发送的HTTP请求消息; Request对象是HttpRequest类的实例,是由ASP.NET自动创建的; HttpRequest类使 ASP.NET 能够读取客户端在Web请求期间发送的HTTP值; Request对象的主要功能是从客户端得到数据。,6.3.1 Request对象的属性和方法,Request对象的属性 Browser:获取或设置有关正在请求的客户端的浏览器功能的信息。 Cookies:获取客户端发送的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年职场职业道德与行为规范测试题目
- 2026年医师资格考试辅导练习题库
- 公开课《古对今》课件
- 公平正义道法课件
- 职业病防治科普精准化策略探讨
- 公安窗口礼仪培训
- 公安法律知识培训
- 金华浙江金华市委社会工作部所属事业单位金华市社会工作服务中心选调笔试历年参考题库附带答案详解
- 江门广东江门开平市苍城镇兴业投资服务中心招聘笔试历年参考题库附带答案详解
- 新乡2025年河南新乡市第一人民医院招聘23人笔试历年参考题库附带答案详解
- 瓦斯发电安全规程培训课件
- 私有云入门课件
- 财政评审廉政管理办法
- 公司人员服从管理制度
- 演出单位薪酬管理制度
- 企业财务数字化转型的路径规划及实施方案设计
- DB32T 1712-2011 水利工程铸铁闸门设计制造安装验收规范
- 百度人才特质在线测评题
- DL∕T 5142-2012 火力发电厂除灰设计技术规程
- 2024年水合肼行业发展现状分析:水合肼市场需求量约为11.47万吨
- 提水试验过程及数据处理
评论
0/150
提交评论