37
第第第 Web 第第第第第第

第八章 Web 应用程序开发

  • Upload
    kizzy

  • View
    104

  • Download
    4

Embed Size (px)

DESCRIPTION

第八章 Web 应用程序开发. 本章学习要点. 了解基于 Web 的应用程序的概念 了解 ASP.NET 2.0 的基本知识及 ASP.NET 和 VB.NET 的关系 熟悉服务器控件的定义、类型、属性及各类控件的使用和 Web 应用的调试 熟悉 HTML 服务器控件构架 熟悉 ASP.NET 配置文件、 ASP.NET 网站管理工具、缓存及性能监视和测试. 8.1 Web 应用程序. .NET 框架的目标是设计用于 Internet 时代应用程序的开发平台。 - PowerPoint PPT Presentation

Citation preview

Page 1: 第八章   Web 应用程序开发

第八章 Web 应用程序开发

Page 2: 第八章   Web 应用程序开发

本章学习要点 了解基于 Web 的应用程序的概念 了解 ASP.NET 2.0 的基本知识及 ASP.NET

和 VB.NET 的关系 熟悉服务器控件的定义、类型、属性及各类

控件的使用和 Web 应用的调试 熟悉 HTML 服务器控件构架 熟悉 ASP.NET 配置文件、 ASP.NET 网站管

理工具、缓存及性能监视和测试

Page 3: 第八章   Web 应用程序开发

8.1 Web 应用程序 .NET 框架的目标是设计用于 Internet 时代应

用程序的开发平台。 对于计算机程序开发人员来讲,有了 .NET

不但可以方便地设计传统的 Windows 应用程序,而且可以高效地开发以 Internet 为基础,通过其标准的通信协议来沟通的 Web 应用程序。

Page 4: 第八章   Web 应用程序开发

8.1.1 客户机 / 服务器的 Web 应用程序

大多数 Windows 应用程序都是独立的应用程序,而 Web 应用程序需要服务器和客户机。 Web 服务器把网页发送给客户机 , 并在浏览器应用程序中显示网页。 请求

响应

服务器 客户机(浏览器)

服务器把网页发送给客户机 , 在游览器窗口中显示网页 服务器可以位于远程机器上 , 也可以位于客户机所在的机器上

Page 5: 第八章   Web 应用程序开发

8.1.1 客户机 / 服务器的 Web 应用程序

1. Web 服务器2. Web 客户机3. Web 页4. Web 页与 Windows 窗体

Page 6: 第八章   Web 应用程序开发

8.1.2 一个 Web 应用程序实例( 1 )启动 Visual Web Developer 2005 , 单击 文件 \

新建网站( 2 )新建项目以后 Visual Web Developer 将自动添

加一个名为 Default.aspx 的 ASP.NET 页面文件,同时将使该文件处于编辑状态

( 3 )接下来我们可以使用默认的 Default.aspx ,也可以自己添加新的 Web 窗体

Page 7: 第八章   Web 应用程序开发

8.1.2 一个 Web 应用程序实例( 4 )添加新的 Web 窗体以后 Visual Web Developer 将自动打开该文件,并使之处于 HTML 视图,从工具箱中的标准选项卡中拖动一个 Label 控件到设计视图。

( 5 )选中刚才拖入的 Label 控件 , 在属性窗口中设置其 ID 属性为 lblHello

( 6 )在 Helloworld1.aspx 设计视图的空白处双击,这时将自动打开 Helloworld1.aspx.vb 文件

Page 8: 第八章   Web 应用程序开发

8.1.2 一个 Web 应用程序实例 ( 7 )在解决方案资源管理器中选中

Helloworld1.aspx 文件,单击右键,选中 在浏览器中查看选项,或者直接敲击键盘 F5 键,如图所示。

Page 9: 第八章   Web 应用程序开发

8.2 ASP.NET 介绍ASP.NET 是一种 Web 开发环境,它可以

编译包括 Visual Basic 在内的任何一种 .NET语言编写的应用程序。这意味着在开发 Web应用程序时,可以利用公共语言运行时和托管代码的优点。 ASP.NET 为 Web 窗体和 Web服务提供同 Windows 应用程序一样的调试支持,使 Web 开发变得更为容易。

Page 10: 第八章   Web 应用程序开发

8.2.1 关于 ASP.NETASP.NET 是建立在微软新一代 .NET 平台架构

上,利用普通语言运行时( Common Language Runtime )在服务器后端为用户提供建立强大的企业级Web 应用服务的编程框架 。

ASP.NET 主 要 包 括 WebForm 和 WebService两种编程模型。前者为用户提供建立功能强大、外观丰富的基于表单 (Form) 的可编程 Web 页面。后者通过对 HTTP 、 XML 、 SOAP 、 WSDL 等 Internet标准的支持提供在异构网络环境下获取远程服务,连接远程设备,交互远程应用的编程界面。

Page 11: 第八章   Web 应用程序开发

ASP.NET 与 ASP 的联系和主要区别

ASP.NET 与现存的 ASP 保持语法兼容 。ASP.NET 与 ASP 的主要区别在于前者

是编译( Compile )执行 , 而后者是解释( Interpret )执行 , 前者比后者有更高的效率。

Page 12: 第八章   Web 应用程序开发

8.2.3 Visual Basic 和 ASP.NET

每一个 Web 窗体都由两个不同的部分组成 (1) HTML 代码和提交页面所需的指令; (2) Visual Basic 代码。 VB 代码包含了响应事件的程序逻辑。这个代码文件称为后台代码( code-behind )文件。

使用 VB 和 ASP.NET 可以创建面向对象的、由事件驱动的 Web 应用程序 。

Page 13: 第八章   Web 应用程序开发

8.3 Web 窗体 ( 服务器控件 ) 控件Web 窗体是用于创建可编程网页的 ASP.NET 技

术。使用 Web 窗体,通过将控件拖放到设计器上然后添加代码来创建 Web 页。

Web 窗体是以 aspx 为后缀的文件,它被编译成 NGWS 的类,只需一次编译。

Web 窗体有几种可用的控件。可以在一个窗体中混合使用这些控件。

Page 14: 第八章   Web 应用程序开发

8.3.1 服务器控件的定义 服务器控件是一种在服务器端完成的控件,服务器

端在处理完控件动作后,再生成标准的 HTML 文件发送给客户端。

服务器控件在页中使用包含属性 runat=“server”声明性标记标识。

服务器执行的额外处理包括读取 ASP.NET 页面并将页面上的服务器控件转换为浏览器可以理解的 HTML 。

Page 15: 第八章   Web 应用程序开发

8.3.2 控件类型 标准 (ASP.NET 服务器控件 ):这些控件是 ASP.N

ET 和 .NET Framework 提供的最丰富、最强大的控件。

数据:这个控件列表包括用于显示数据的 GridView和 DataList 。

验证:这些控件用于在把数据发送给服务器之前验证数据。

导航:包括一个菜单控件。

Page 16: 第八章   Web 应用程序开发

8.3.2 控件类型 登录: Visual Web Developer 2005 包含登录

控件和向导。 WebParts: 组件的 WebParts组允许用户在浏

览器上改变界面的外观和操作方式。 HTML:标准的 HTML 控件,只能在窗户端操作。无法为 HTML 控件编写服务器端编程逻辑。向服务器提交窗体时,所有的 HTML 控件都传送给服务器,返回静态文本。如果要把已有的HTML 页面转换到 ASP.NET ,以获得更多的功能,就会用到 HTML 控件。

Page 17: 第八章   Web 应用程序开发

8.3.2 控件类型 常规:为了方便设计窗体,可以把上面介绍的任

意的控件拖动到此选项卡中。 在设计视图中,要注意客户端 HTML 控件和服务

器端控件的区别。

客户端的 button与服务器端的 button

客户端 HTML控件

服务器控件

Page 18: 第八章   Web 应用程序开发

8.3.3 设置控件的属性 设置控件的属性将定义其外观和行为。 有两种方式设置控件属性:(1) 在“设计”视图中,选择控件,然后在“属性”窗

口中设置属性。(2) 在“源”视图中,在控件的元素标记中置入插入点,然后在“属性”窗口中设置属性。

服务器控件的基本属性如表 8.1 所示

Page 19: 第八章   Web 应用程序开发

8.3.4 事件处理 为 Web 控件编写事件处理的 VB 代码和为 Window

s 控件编写代码的方式是一样的。 事件可能发生在客户机 , 也可能发生在服务器 , 但代

码总是在服务器上执行。 捕获事件,将其发送到服务器以及执行所需方法的整个过程是自动完成的。

服务器控件的基本事件如表 8.2 所示:

Page 20: 第八章   Web 应用程序开发

8.3.5 标准控件 这些控件是在使用 Windows 应用程序时遇到的各

种工具的 Web 对等物。 最常用的控件: ( 1 ) TextBox 控件:用于在页面上输入文本,常见于购物站点的订单表格,或站点的登录页面。

( 2 ) Label 控件:用于在页面的特定位置显示简单的文本。

Page 21: 第八章   Web 应用程序开发

8.3.5 标准控件 ( 3 ) Hyperlink 控件:用于在页面上提供超链

接功能,这个功能允许导航到站点的其他页面,或者导航到 Internet 上的其他资源。

( 4 ) Image 控件:用于在页面上显示图片。 ( 5 ) DropDown List 控件:用于向用户提供一

个可选择的选项列表;该列表在没有使用时会 折叠起来以节省空间。

Page 22: 第八章   Web 应用程序开发

8.3.5 标准控件 ( 6 ) Listbox 控件:用于提供一个大小固定的

选项列表。 ( 7 ) CheckBox 和 Radio Button 控件:用于

选择可选的附加信息,具体形式分别是 yes/no 和“多选一”。

( 8 )按钮 控件:从提交订单到修改站点的个人设置,单击页面上的按钮通常会促使信息传递到服务器,而服务器会对这些信息做出反应并显示一个结果 。

Page 23: 第八章   Web 应用程序开发

8.3.6 调试 在 Visual Web Developer IDE 中运行 Web 应用程

序不同于运行 Windows 应用程序。 IDE 不会为调试 Web 程序自动生成需要的代码。如果要使用调试工具如断点和单步执行,必有在项目中添加调试支持。

要添加进行调试的必要支持,项目的 Web.config文件必须包含:

<compilation debug=“true” />

Page 24: 第八章   Web 应用程序开发

8.4 HTML 控件 在创建站点时,有时对某个控件在服务器端不需

要做任何处理。在这种情况下,开发人员可能只想在页面上添加静态的 HTML 控件,例如,仅仅在页面上放置一些元素以便为元素的分组提供容器。

工具箱的 HTML 面板上包含了大多数最常用的 HTML元素的拖放版本。

工具栏中的这些控件只是向页面添加 HTML元素的一种简便的方法,可以使用的控件并不局限于这些元素。在 Source View 中,开发人员可以添加任意合法的 HTML元素。

Page 25: 第八章   Web 应用程序开发

8.4 HTML 控件1.将 HTML 控件用作 Server 控件 :可以

将任何 HTML 元素转换为服务器控件,只要为该元素添加 runat=“server” 属性即可。

2.应该使用 HTML 控件还是 ASP.NET 服务器控件:在选择向页面添加哪种类型的控件时,绝大多数开发人员的方法是在页面上主要使用 ASP.NET 的 Standard Server Control ,而在布局时使用静态 HTML元素。

Page 26: 第八章   Web 应用程序开发

8.4.1 HTML 服务器控件构架 HtmlAnchor 控件:用于指定超级链接。 HtmlImage 控件:用来将显示图片于网页上的控件。 HtmlButton 控件:让用户透过按钮执行命令或动作。

HtmlForm 控件:可以让用户将 Client 端的数据传送至 Server 端作处理。

Page 27: 第八章   Web 应用程序开发

8.4.1 HTML 服务器控件构架 HtmlInputButton 控件:执行一个指令或动作。 HtmlInputText 控件:让用户输入数据。 HtmlInputRadio 控件:单选一个选项。 HtmlInputCheckBox 控件:可选择多个选项。 HTMLInputHidden 控件:顺便传送不需要使用

者输入的数据时,可以使用隐藏输入控件。

Page 28: 第八章   Web 应用程序开发

8.4.1 HTML 服务器控件构架 HtmlTextArea 控件:文本输入框。 HtmlSelect 控件:选单。 HtmlTable 、 HtmlTableRow 、 HtmlTableCell

控件: HtmlTable 控件可以配合 HtmlTableRow以及 HtmlTableCell 控件来动态的产生表格。 HtmlTable 控件是由许多列( Row )所组成,而每一列中是由许多储存格( Cell )所组成。所以 HtmlTable 控件中有 Rows集合, HtmlTableRow 控件中有 Cells 集合。

Page 29: 第八章   Web 应用程序开发

8.5 ASP.NET 性能与配置 ASP.NET 配置系统提供一个分层配置结构,能够配

置整个服务器上的所有 ASP.NET 应用程序、单个 ASP.NET 应用程序、各个页面或应用程序子目录。

ASP.NET 的配置文件是基于 XML 文本文件,全部命名为 web.config 。每个 web.config 文件将配置设置应用到其所在的目录和下面的所有虚拟子目录中,配置文件可以出现在 ASP.NET Web 应用程序服务器上任何目录中,并且子目录中的设置可以随意修改或重写在父目录中提供的设置。

Page 30: 第八章   Web 应用程序开发

8.5 ASP.NET 性能与配置 基于 .config 的文件有以下优点: 可随时修改: 易于访问和复制: 易于创建编辑:

Page 31: 第八章   Web 应用程序开发

8.5 ASP.NET 性能与配置1. ASP.NET 配置文件 web.config 文件中主要包括 3 个方面的信息: 应用程序配置,用于设置可以使用的功能。 连接字符串,用于连接数据源,以读取或写入数据。 system.web 和 system.net 设置。

Page 32: 第八章   Web 应用程序开发

8.5 ASP.NET 性能与配置2. ASP.NET网站管理工具 网站配置设置都存储在一个名为 web.config 文件

中,该文件位于网站的根文件夹中。开发人员可以手动编辑修改该文件。而网站管理工具使开发人员无需手动编辑web.config文件,就可以更改站点配置。

Page 33: 第八章   Web 应用程序开发

8.5 ASP.NET 性能与配置3. 缓存 所谓缓存,就是将那些频繁访问的数据,以及那些需要大量处理时间来创建的数据存储在内存中,从而提高性能。

ASP.NET 提供了两种基本的缓存机制来实现缓存功能:页输出缓存和应用程序缓存。

Page 34: 第八章   Web 应用程序开发

8.5 ASP.NET 性能与配置4. 性能监视和测试 性能监视中最简单的方法就是 ASP.NET跟踪。跟踪的主要使用方式是帮助进行调试,虽然不是设计为性能工具,但可以利用它来获得对如何执行页面的深入的了解。

Page 35: 第八章   Web 应用程序开发

8.6 使用 ASP.NET构建 Web 应用程序的练习

本节简要介绍如何使用 ASP.NET 2.0 构建 Web 应用程序。重点讲述开发桌面应用程序和开发 Web应用程序之间的区别。

练习 1:创建简单的 Web 应用程序 练习 2:布置控件 练习 3:挂接事件处理程序 练习 4:管理状态练习 练习 5:以数据为中心的站点

Page 36: 第八章   Web 应用程序开发

本章小结 ASP.NET作为网络应用开发的新一代语言,

其工作原理是基于网络传输的。要想建立 ASP.NET 应用程序,必须要建立 ASP.NET 运行环境。

Web 窗体是用于创建可编程网页的 ASP.NET技术。使用 Web 窗体 , 通过将控件拖放到设计器上然后添加代码来创建 Web 页。

Page 37: 第八章   Web 应用程序开发

本章小结 ASP.NET 配置系统提供一个分层配置结构,

能够配置整个服务器上的所有 ASP.NET 应用程序、单个 ASP.NET 应用程序、各个页面或应用程序子目录。

ASP.NET 中提供了一个简单的 Web 界面帮助开发人员查看并管理网站配置,该管理工具就是 Web 网站管理工具( Website Administration Tool ,缩写为 WAT )。