26
2022年6年9年 年年年 年 16 年 Web 服服服服服服服 年年年年 : 年年年

第 16 章 Web 服务创建和使用

  • Upload
    field

  • View
    86

  • Download
    0

Embed Size (px)

DESCRIPTION

第 16 章 Web 服务创建和使用. 主讲教师 : 杨建军. Talents come from diligence, and knowledge is gained by accumulation. 天才源于勤奋,知识源于积累 。. 教学目标. 本章主要介绍了如何用 ASP.NET 编写 Web 应用程序,如何使用 Web 控件以及如何通过 Web 窗体读写数据库。 Web 应用程序,是一种以网页形式为界面的应用程序, Web 应用程序可以利用网络的强大功能为用户提供服务。 ASP.NET 为这种类型应用程序的开发提供了一个强大的平台。. 教学重点. - PowerPoint PPT Presentation

Citation preview

Page 1: 第 16 章    Web 服务创建和使用

2023 4 21 年 月 日 星期五

第 16 章 Web服务创建和使用

主讲教师 : 杨建军

Page 2: 第 16 章    Web 服务创建和使用

Talents come from diligence, and knowledge is gained by accumulation.

天才源于勤奋,知识源于积累 。

Page 3: 第 16 章    Web 服务创建和使用

教学目标

本章主要介绍了如何用 ASP.NET 编写 Web 应用程序,如何使用 Web 控件以及如何通过 Web 窗体读写数据库。 Web 应用程序,是一种以网页形式为界面的应用程序,Web 应用程序可以利用网络的强大功能为用户提供服务。 ASP.NET 为这种类型应用程序的开发提供了一个强大的平台。

Page 4: 第 16 章    Web 服务创建和使用

教学重点

ASP.NET 概述使用 ASP.NET 创建 Web 应用Web 窗体校验控件使用使用 Web 窗体访问数据

Page 5: 第 16 章    Web 服务创建和使用

15.1 ASP.NET概述 ASP.NET 技术可用于动态创建带有服务器端代码

的 Web 页面。 它是 ASP ( Active Server Page )的后续版本。一个 ASP.NET 页面文件可以被拆分成两个独立的部分:一个是 .aspx 文件,它实际上是一个 HTML 文件,含 HTML 代码和控件信息,定义了一个页面的布局和外观;另一个是 .aspx.cs 文件,每个 .aspx 文件通常都有一个对应的 .aspx.cs 文件,包含实现程序功能的代码,如事件处理程序和辅助方法等。

在 ASP.NET Web 应用程序项目中“ *.aspx” 和“ *.cs” 文件的内容,前者与普通的 .htm 文件格式非常相似,而后者则与 C# 应用程序的格式相似。

Page 6: 第 16 章    Web 服务创建和使用

ASP .NET 介绍 ASP .NET 的总体构架图

Page 7: 第 16 章    Web 服务创建和使用

ASP.NET 工作原理 使用 ASP.NET 在客户系统上创建 Web 应用程序,

只需一个简单的 Web 浏览器 在服务器系统上,需要 ASP.NET 运行库

Internet

客户端Web浏览器

Web服务器IIS

ASP.NET工作进程

分析器 编译器

执行

Page 8: 第 16 章    Web 服务创建和使用

15.2 使用 ASP.NET创建Web应用

使用 ASP.NET 创建 Web 应用非常方便。因为 ASP.NET 中已定义了很多内置对象,我们可以直接使用。

Page 9: 第 16 章    Web 服务创建和使用

15.2.1 ASP.NET的内建对象 尽管 ASP .NET 的面向对象的设计和基础代码在

本质上不同于 ASP ,但 ASP 中许多常用的关键字和运算符在 ASP .NET 中仍保留了下来 Page 对象用来与扩展名为 .aspx 的文件相关联。这些

文件在运行时创建为 Page 对象,并缓存在服务器内存中。 Page 对象充当页中所有服务器控件的命名容器

Response 对象是 HttpResponse 类的实例。当用户请求页面时, ASP .NET 将自动创建该对象

Request 对象是 HttpRequest 类的实例。当用户请求页面时, ASP .NET 也将自动创建 Request 对象

Application 对象是 HttpApplicationState 类的实例。它提供对所有会话的应用程序范围的方法和事件的访问

Session 对象是 HttpSessionState 类的实例。它提供了对会话状态值以及会话级别设置和生存期管理方法的访问

Page 10: 第 16 章    Web 服务创建和使用

Web 窗体页指令 Web 窗体页指令用来指定当请求 ASP .NET 页和用户控件

时使用的设置 指 令 说 明

@Page 该指令定义 ASP .NET 页分析器和编译器使用的页的特定属性。它只能包含在 .aspx 文件之中,且每个 .aspx 文件之中只能有一个 @ Page 指令

@Control 该指令定义 ASP .NET 页分析器和编译器使用的用户控件 (.ascx 文件 )特定的属性。只能包含在 .ascx 文件之中。且每个 .ascx 文件中只能有一个 @Control指令

@Assembly 该指令在编译过程中将程序集链接到当前页,以使程序集的所有类和接口都可用在该页上

@Implements 该指令指示当前页或用户控件实现指定的 .NET框架接口@Import 该指令将命名空间显式导入到页中,使导入的命名空间的所有类和接口可用于该

页。导入的命名空间可以是 .NET框架类库或用户定义的命名空间的一部分@OutputCache 该指令以声明的方式控制 ASP .NET 页或页中包含的用户控件的输出缓存策略@Reference 该指令以声明的方式指示另一个用户控件或页源文件应该被动态编译并链接到在

其中声明该指令的页@Register 该指令将别名与命名空间及类名关联起来,以便在自定义服务器控件语法中使用

简明的表示法

Page 11: 第 16 章    Web 服务创建和使用

15.2.2构建 ASP.NET应用程序

使用 ASP.NET 创建的一个 Web 应用程序通常有一个或多个 ASP.NET 页或者 Web 窗体、代码文件以及配置文件组成。

一个新的 Web 应用程序被创建后,系统自动创建的文件中包含以下几个文件:

Page 12: 第 16 章    Web 服务创建和使用

15.2.2构建 ASP.NET应用程序 WebForm1.aspx 文件:这是一个空白的 ASP.NET We

b 窗体页面,通常可将第一个 .aspx 文件改名为“ default.aspx”或“ index.aspx” 作为 Web站点的缺省主页。每个 .aspx 文件开头的预编译指令指明了对应的代码文件的名称和位置。

AssemblyInfo.cs 文件:这是一个普通的源代码文件,其中包含了所有的程序集特性。

Global.asax.cs 文件:这是应用程序自动启动时被加载的第一个文件,它包含了 Application_Start , Session_Start , Application_End , Session_End 等几个过程。

Web.config 文件:这是 ASP.NET 应用程序的配置文件。这个文件采用的是 XML 格式,其中包含了与安全性、缓存管理、页编译等有关的信息。

Page 13: 第 16 章    Web 服务创建和使用

15.2.3 Web Server控件 Web 窗体控件与 HTML 控件或 HTML表单相比较,有一

个重要的区别, Web 窗体控件是服务器端控件,是在服务器端生成。 所以,添加到窗体上的 Web 窗体控件也统称为 Server 控件。 Server 控件与普通网页上使用的标准HTML 控件相似,只是它们编程更加灵活。大多数 Server控件都揭示了事件处理程序、方法和属性,服务器上的代码可以动态地执行和修改它们。

Server 控件控件是基于更加抽象的、具有更强的面向对象特征的设计模型,它提供了比 HTML 服务器种类更多、功能更强大的控件集合。它属于 System.Web.UI.WebControl 名称空间,所有的 ASP.NET 服务器控件类都是从该名称空间的基类 WebControl派生的。

Page 14: 第 16 章    Web 服务创建和使用

登录控件 ASP.NET 2.0 提供了一些新的安全控件,使用预定义的登录控件不需手动定制表单,即可完成登录及注册等功能

安 全 控 件 说 明Login Login 控件是一个复合控件,包含要求用户输入用户名和密码的控

件LoginStatus LoginStatus 控件根据用户是否登录,包含登录或注销的超链接 LoginName LoginName 控件显示登录的用户名 LoginView LoginView 控件根据用户是否登录显示不同的内容PasswordRecovery PasswordRecovery 是一个复合控件,用于重新设置密码。根据安全

配置,要求用户回答以前设置的问题,或通过电子邮件发送密码 ChangePassword ChangePassword 是一个复合控件,允许登录的用户更改密码CreateUserWizard CreateUserWizard 是一个创建新用户向导,可以把用户信息写入Me

mbershipProvider

Page 15: 第 16 章    Web 服务创建和使用

15.2.4创建和使用主题 利用【样式生成器】可以设置窗体的样式,但这样定义的样式只能应用于一个窗体。商业网站往往包含数十甚至数百个窗体,怎样才能保持这些个窗体在格式上的一致性,这就是“主题”的作用了。

所谓主题,就是一系列定义好的属性、样式和图像。我们可以选择将它们应用于特定网页上的控件,也可以选择将它们应用于整个网站的所有网页。

Page 16: 第 16 章    Web 服务创建和使用

15.2.4创建和使用主题 1.定义主题 主题由一组元素组成:外观、级联样式表 ( CS

S )、图像和其他资源。 主题是在网站或 Web 服务器上的特殊目录中定

义的。这个特殊目录的名称为 App_Themes 。 主题将至少包含一系列的外观文件。外观文件具

有文件扩展名 .skin ,它包含各个控件的属性设置。控件外观设置类似于控件标记本身,但只包含要作为主题的一部分来设置的属性。

Page 17: 第 16 章    Web 服务创建和使用

15.2.4创建和使用主题 有两种类型的控件外观:“默认外观”和“已命

名外观”。 当向网页应用主题时,默认外观自动应用于同一类型的所有控件。如果控件外观没有 SkinID 属性,则是默认外观。已命名外观是设置了 SkindID属性的控件外观。

要创建一个主题,首先为网站添加一个 App_Themes 文件夹;再为主题创建一个子文件夹,在这个子文件夹中创建一个或多个外观文件来定义控件的属性。

Page 18: 第 16 章    Web 服务创建和使用

15.2.4创建和使用主题 2.应用主题 为一个主题创建好一系列的外观文件之后,至少

可以采用两种方式将一个主题应用于 Web 窗体:可以设置每个页的 @Page属性,也可以使用 Web配置文件,将主题全局性的应用于所有网页。

Page 19: 第 16 章    Web 服务创建和使用

15.3 Web 窗体校验控件使用 和 Windows 应用程序一样,校验用户输入的内容是否符合一些要求是系统的一个重要内容。对 Web 应用程序来说,还应该考虑是在服务器端还是在客户端(浏览器)进行校验。

进行数据校验有两种方式,分别是服务端校验和客户端校验,这是两种完全不同的方式。

在 ASP.NET中,提供了验证控件来检查用户输入的有效性,而不需要程序员编写大量的验证函数

验证控件创建了客户端 JavaScript代码,在客户端上验证输入,还创建了服务器端代码,在服务器上验证输入。把验证属性 EnableClientScript设置为 false,可以关闭 JavaScript。设置 Page类的 ClientTarget 属性,也可以关闭 JavaScript,而不需要对每个验证控件执行改变属性值的操作。

Page 20: 第 16 章    Web 服务创建和使用

15.3 Web 窗体校验控件使用 和 Windows 应用程序一样,校验用户输入的内容是否符合一些要求是系统的一个重要内容。对 Web 应用程序来说,还应该考虑是在服务器端还是在客户端(浏览器)进行校验。

进行数据校验有两种方式,分别是服务端校验和客户端校验,这是两种完全不同的方式。

在 ASP.NET中,提供了验证控件来检查用户输入的有效性,而不需要程序员编写大量的验证函数

验证控件创建了客户端 JavaScript代码,在客户端上验证输入,还创建了服务器端代码,在服务器上验证输入。把验证属性 EnableClientScript设置为 false,可以关闭 JavaScript。设置 Page类的 ClientTarget 属性,也可以关闭 JavaScript,而不需要对每个验证控件执行改变属性值的操作。

Page 21: 第 16 章    Web 服务创建和使用

15.3 Web 窗体校验控件使用

ASP.NET 中提供了一组功能强大的数据验证组件,这些控件减轻了类似于 ASP 时代开发人员编程的复杂步骤。控件共有如下六种。

  ●  RequiredFieldValidator

  ●  CompareValidator

  ●  RangeValidator

  ●  RegularExpressionValidator

  ●  CustomValidator

  ●  ValidationSummary

Page 22: 第 16 章    Web 服务创建和使用

15.4 使用Web 窗体访问数据 在 ASP.NET 中通过使用 ADO.NET 实现数据库访

问的操作与 Windows 应用程序对数据库的访问基本一致,可以实现对数据库数据的读取、更改、添加与删除。

Page 23: 第 16 章    Web 服务创建和使用

15.4.1Web窗体的GridView控件使用

Web 窗体的也有一个类似 Windows 窗体的 DataGridView 控件的控件,称为 GridView 控件。在Web 窗体应用中,客户端应用程序(或浏览器)一般与要用的数据库距离很远,这就意味着必须高效的利用网络带宽。不能浪费资源获取大量用户不想要的数据。 Web 窗体 GridView 控件支持分页技术。

Web 窗体 GridView 控件也能在数据库断开连接时使用。可以创建一个 SqlDataSource 对象连接到一个数据库,填充一个 DataSet,然后断开与数据库的连接。可以将 SqlDataSource 控件中的 DataSet 对象绑定到一个 GridView 控件。

Page 24: 第 16 章    Web 服务创建和使用

15.4.2 查询数据 在 ASP.NET 中访问数据库与在 Windows 中访问数据库

的操作步骤基本相同: 创建 DataSet (数据集合)对象,以存放从数据库中读取

的记录。 创建与数据库的连接,即创建 SqlDbConnection或 OleD

bConnection ( Ole 数据库连接)对象,建立程序与数据库的数据传输通道。

创建 SqlDbDataAdapter或 OleDbDataAdapter ( Ole 数据库数据适配器)对象,以完成从数据库读取记录或将程序使用的记录写入数据库。

将数据库中读取的数据写入 DataSet( 数据集合 ) 中,即数据填充;

将 DataSet (数据集合)中的数据与控件(如数据表格)绑定,以显示数据。

Page 25: 第 16 章    Web 服务创建和使用

15.4.3 查询数据 前面我们介绍了利用 GridView 控件来检索和浏览

数据。下面我们介绍用 GridView 控件来修改和删除数据。 GridView 控件可用于向网格添加按钮,以便于用户执行特定的命令。 VS2005 提供了一些预定义的按钮用于删除、编辑数据。当然我们也可以添加自定义的按钮和命令。

Page 26: 第 16 章    Web 服务创建和使用

谢谢!