Version 3.0
ASP.NET 和 Web 窗体
第一章
2
目标
? 描述 Web 应用程序
? 描述 Web 应用程序开发周期
? 探讨 Active Server Page
? 解释 ASP.NET 的功能
3
传统客户端 /服务器
客户端 1
客户端 2
4
Web 应用程序
? 无状态的编程模式
? 断开式连接
? 基于请求 /应答的模式
ActiveX
数据对象
(ADO)
数据库
客户端 1
(浏览器)
客户端 2
(浏览器)
5
启用 Web 的应用程序的结构
代理服务器 Internet
数据库
服务器
Web
服务器
HTTP
证书服务器
基于服务器的程序
ASP
CGI
ISAPI
其他服务器
FTP
SMTP
Exchange Server
客户端 1
(浏览器)
6
HTTP 的工作原理
客户端
(浏览器)
客户端
(浏览器)
请给我发送
,超文本简介,
超文本简介
页请求
7
网络接口和 HTTP 服务
网络接口
HTTP FTP
Interne
t
传输层和
Internet 层
(TCP/IP)
Windows 套接字
8
访问数据库信息
Internet客户端(浏览器)
ODBC 数据库服务器
Web
服务器
HTTP
9
Web 应用程序开发周期
设计应用程序
构造 并测试应用程序的组件
实施
生产和维护
规划 Web 应用程序
10
Web 应用程序开发过程

功能规格说
明是否完成?否
设计阶段
设计是否
完成?
规划阶段

构造和测试
是否完成?
生产和维护
A
A



实施
11
Web 应用程序中的脚本
数据输入
处理
Web 服务器:
CGI 脚本
Web 客户端:
浏览器
处理
数据输入
处理
Web 服务器:
CGI 脚本
Web 客户端:
浏览器
JavaScript
VBScript
12
客户端脚本的用法
HTML 窗体 用户输入
JavaScript
数据验证
数据
是否有效?
有效数据 将数据提交 给服务器


13
嵌入脚本
提供用户交互
动态修改内容
验证数据
集成
<script language="JavaScript">
<!--
JavaScript statements;
//-->
</script>
指定脚本语言
注释标记
14
Active Server Page
? <HTML><BODY>
? <CENTER><I><FONT COLOR="HOTPINK" size =
5>
? <%If Time >= #12:00:00 AM# And Time < #12:00:00
PM# Then%>
?,现在时间是 12:00 am 到 12:00 pm 之间”
? <%Else%>
“现在时间是 12:00 pm 到 12:00 am 之间”
? <%End If%>
? </FONT></I></CENTER>
? </BODY></HTML>
在服务器上执行
15
ASP 文件的处理
客户端
(浏览器)
ASP.DLL
IIS VBScriptJavaScript
ActiveX
数据对象
(ADO)
数据库 ASP 文件
16
ASP 的优点
17
基于 Web 的应用程序中的 ASP 文件
客户端
(浏览器)
活动服务
器组件
数据库
Active Server
Page (ASP)
?JavaScript
?VBScript
Active Server
Page (ASP)
?JavaScript
?VBScript
Active Server
Page (ASP)
? JavaScript
? VBScript
18
ASP.NET 的演变
19
ASP 的缺点
ASP 页需要解释
仅两种非类型语言,VBScript 和 JavaScript
代码,HTML 和文本的混合,象意大利面条一样
使用同一文件
额外的功能代码
代码不能重用
没有调试机制
先关闭 Web 服务器才能安装新版本的 DLL
20
ASP.NET 的优点
ASP.NET
支持强类型语言,如 C#,VB
通过继承机制支持代码的
重用。
ASP 代码与 HTML 设计
和文本分离
提供声明性服务器控件
内置方法 Trace 可以帮助
调试页
无需注册组件
编译页可改进执行速度
21
ASP.NET 的功能 2-1
识别客户端浏览器的类型并为客户
端相应地显示内容。
使用 C# 或 VB.NET 添加功能
使用服务器端缓存
随附许多内置服务器控件
ASP.NET
22
ASP.NET 的功能 2-2
引用层次化命名空间
Global.asax 文件保存附加事件
Web 服务 – 通过 Web 部署和使用的功能
ASP.NET
23
Web 窗体 IDE演示
24
项目文件 - Web 窗体
? WebForm1.aspx 和 WebForm1.aspx.cs
? AssemblyInfo.cs
? Web.config
? Global.asax
25
总结
? Web 应用程序在开发期间甚至部署之后都使
用同一组文件
? 基于服务器的脚本将处理客户端请求并将所
请求的页发送给浏览器
? 在客户端脚本中, 脚本嵌入在 HTML 文档中
? 在显示页时, 主机浏览器将解释并执行代码
? Web 窗体提供 IDE,可以在其中开发 Web 应
用程序