本书是“微软.NET程序设计”系列丛书之一。全书共15章,分为四部分。分别介绍了如何创建简单的Web数据库页面;配置Web服务器;创建各种适用于现实生活中的应用程序;创建一个可以自动为图片创建缩略图和菜单页的图库;实现分类广告站点的核心功能;以及创建和使用Web访问。在本书的最后还为您提供了一系列提高Web数据库页面性能和诊断出错页面的建议。\r\n 本书通过大量的实例来讲解课文内容,所采用的例子都非常简单、实用,特别适合开发Web数据库的初中级读者阅读。
前言\r\n\r\n第I部分 Web数据库页面介绍\r\n\r\n第1章 Web数据库入门\r\n\r\n1.1 选择服务器端工具\r\n1.2 从ASP升级到ASP.NET\r\n1.3 准备环境\r\n1.4 创建简单的Web数据库显示\r\n1.4.1 新建一个ASP.NET文件\r\n1.4.2 添加代码以读取数据库并编写相应的HTML\r\n1.4.3 把Web页和数据库复制到Web服务器上\r\n1.4.4 运行并查看结果\r\n1.5 下一阶段学习目标\r\n1.6 本章小结\r\n\r\n第II部分 基本概念\r\n\r\n第2章 组织Web环境\r\n\r\n2.1 在自己的计算机上建立开发环境\r\n2.2 安装Microsoft Web服务器\r\n2.3 安装其他服务\r\n2.4 安装.NET Framework\r\n2.5 配置Web服务器\r\n2.5.1 创建可执行文件夹\r\n2.5.2 创建Web服务器应用程序\r\n2.5.3 配置ASP.NET应用程序\r\n2.5.4 配置Web服务器其他设置\r\n2.6 在Windows 2000和Windows XP中管理Web页的安全性\r\n2.7 找到合适的Web托管服务提供商\r\n2.8 本章小结\r\n\r\n第3章 ASP.NET简介\r\n\r\n3.1 ASP.NET的生命周期\r\n3.2 编写ASP.NET元素\r\n3.3 定义代码声明块\r\n3.4 定义代码呈现块\r\n3.5 理解Page对象\r\n3.5.1 使用Page对象事件\r\n3.5.2 使用Page对象的方法\r\n3.5.3 使用Page对象的属性\r\n3.5.4 使用Cookies集合\r\n3.5.5 使用Request对象\r\n3.5.6 使用Response对象\r\n3.5.7 使用Server对象\r\n3.6 插入服务器端注释\r\n3.7 在服务器端使用包含语句\r\n3.8 编写通用ASP.NET指令\r\n3.8.1 编写@Page指令\r\n3.8.2 编写@Import指令\r\n3.9 编写高级ASP.NET指令\r\n3.9.1 编写@0utputCache指令\r\n3.9.2 编写@Control指令\r\n3.9.3 编写@Implements指令\r\n3.9.4 编写@Register指令\r\n3.9.5 编写@Assembly指令\r\n3.9.6 编写@Reference指令\r\n3.10 本章小结\r\n\r\n第4章 Web宙体介绍\r\n\r\n4.1 窗体基础知识回顾\r\n4.2 使用ASP.NET来改进窗体模型\r\n4.3 创建Web窗体\r\n4.4 编写HTML服务器控件\r\n4.4.1 使用HTML服务器控件属性\r\n4.4.2 检索HTML服务器控件的窗体字段值\r\n4.5 编写web服务器控件\r\n4.6 响应Web窗体事件\r\n4.6.1 创建使用Web服务器控件的Web页\r\n4.6.2 编写响应Web窗体事件的事件处理函数\r\n4.7 保存不同提交之间的窗体数据\r\n4.8 编写验证服务器控件\r\n4.9 有效使用Web窗体\r\n4.9.1 性能\r\n4.9.2 事件参数\r\n4.9.3 延迟的更改事件\r\n4.9.4 事件“冒泡”\r\n4.9.5 在HTML服务器控件中响应客户端和服务器端的事件\r\n4.10 本章小结\r\n\r\n第5章 Visual Basic.NET介绍\r\n\r\n5.1 编写Visual Basic.NET语句\r\n5.2 使用Visual Basic数据类型\r\n5.3 使用文本和常量\r\n5.4 使用运算符\r\n5.4.1 使用算术运算符\r\n5.4.2 使用赋值运算符\r\n5.4.3 使用比较运算符\r\n5.4.4 连接字符串\r\n5.4.5 使用逻辑运算符\r\n5.4.6 使用其他运算符\r\n5.5 日期处理\r\n5.6 字符串处理\r\n5.7 数组处理\r\n5.8 使用集合\r\n5.9 访问对象\r\n5.10 编写逻辑语句\r\n5.11 编写循环语句\r\n5.12 定义子例程、函数和类\r\n5.13 错误处理\r\n5.14 本章小结\r\n\r\n第6章 理解数据库概念与术语\r\n\r\n6.1 了解关系数据库\r\n6.1.1 设计数据库\r\n6.1.2 非规范的数据库设计\r\n6.1.3 规范的数据库设计\r\n6.2 在Access 2002中实现数据库设计\r\n6.2.1 创建一个空数据库\r\n6.2.2 创建一张新表\r\n6.2.3 向新表中添加数据\r\n6.2.4 把表之间的关系记录在文档中\r\n6.2.5 创建查询\r\n6.2.6 创建一个参数化查询\r\n6.3 SQL概念和语法\r\n6.3.1 SELECT语句\r\n6.3.2 FROM子句\r\n6.3.3 WHERE子句\r\n6.3.4 GRoUP BY子句\r\n6.3.5 HAVING子句\r\n6.3.6 ORDER BY子句\r\n6.3.7 DELETE语句\r\n6.3.8 MSERT语句\r\n6.3.9 UPDATE语句\r\n6.4 本章小结\r\n\r\n第7章 用AD0.NET访问数据库\r\n\r\n7.1 AD0.NET简介\r\n7.2 打开和关闭AD0.NET连接\r\n7.3 使用命令对象\r\n7.3.1 设计一个向members表中添加记录的页面\r\n7.3.2 编写向members表添加记录的代码\r\n7.4 使用数据阅读器\r\n7.5 使用存储过程\r\n7.6 使用DataAdapter、DataSet和DataTable对象\r\n7.6.1 使用DataAdapter插入4条自动编号记录\r\n7.6.2 获取Access赋予新表行的自动编号值\r\n7.7 使用DataView和DataRelation对象\r\n7.8 管理事务\r\n7.9 本章小结\r\n\r\n第III部分 开发应用程序\r\n\r\n第8章 访问文件系统和图形\r\n\r\n8.1 介绍.NET文件处理对象\r\n8.2 建立无须维护的图片库\r\n8.2.1 理解图片库的框架集\r\n8.2.2 创建缩略图\r\n8.2.3 创建缩略图页面\r\n8.3 本章小结\r\n\r\n第9章 创建自定义组件\r\n\r\n9.1 使用程序集\r\n9.2 创建用户控件\r\n9.3 创建网页横幅用户控件\r\n9.3.1 创建显示用户控件的页\r\n9.3.2 创建显示网页横幅的用户控件\r\n9.4 创建级联列表用户控件\r\n9.4.1 创建下拉列表控件\r\n9.4.2 向下拉列表中填充数据\r\n9.4.3 创建属性用于读取下拉列表的值\r\n9.5 测试用户控件\r\n9.6 本章小结\r\n\r\n第10章 运行数据库查询\r\n\r\n10.1 创建自定义DataGrid\r\n10.2 创建使用DataGrid的交互式查询\r\n10.2.1 创建用于查询的Web页\r\n10.2.2 编写一个运行数据库查询的事件处理函数\r\n10.2.3 创建使用自定义格式的DataGrid\r\n10.2.4 编写onSortCommand事件处理函数\r\n10.2.5 保存并测试页面\r\n10.3 创建简单的查询页面\r\n10.4 本章小结\r\n\r\n第11章 标识会话和访问者\r\n\r\n11.1 使用Session和Application对象\r\n11.1.1 配置global.asax文件来传送Session变量\r\n11.1.2 在多个Web页中使用Session变量\r\n11.1.3 创建显示访问者的计算机名的主页\r\n11.2 标识访问者\r\n11.2.1 激活基于窗体的身份验证\r\n11.2.2 创建支持基于窗体的身份验证的登录页面\r\n11.2.3 编写处理登录请求的事件处理函数\r\n11.3 本章小结\r\n\r\n第12章 更新数据库\r\n\r\n12.1 从Web页发送电子邮件\r\n12.2 注册新的访问者\r\n12.2.1 创建新的应用程序\r\n12.2.2 创建访问者自行注册的页面\r\n12.2.3 添加发送电子邮件的功能\r\n12.2.4 向注册页面添加验证控件\r\n12.3 确认自行注册\r\n12.4 发送新广告\r\n12.4.1 设计一个发送新广告的页面\r\n12.4.2 编写发送新广告的代码\r\n12.5 本章小结\r\n\r\n第13章 处理文件上载和图片\r\n\r\n13.1 处理上载文件\r\n13.2 开发图片上载页面\r\n13.2.1 创建新的应用程序\r\n13.2.2 创建图片上载页面\r\n13.2.3 检查安全性并显示现有广告信息\r\n13.2.4 检查并保存上载的广告图片\r\n13.2.5 添加一个从Post a New A页面到Upload Picture页面的链接\r\n13.3 链接到Upload Picture页\r\n13.4 本章小结\r\n\r\n第14章 创建和使用Web服务\r\n\r\n14.1 理解Web服务\r\n14.1.1 调用本地类\r\n14.1.2 调用来自源代码程序集的类\r\n14.1.3 调用来自于已编译程序集中的类\r\n14.1.4 调用作为Web服务的类\r\n14.2 实现Contoso分类的Web服务\r\n14.2.1 创建Contoso分类Web服务\r\n14.2.2 为Contoso分类Web服务创建一个代理类\r\n14.2.3 为Contoso分类Web服务创建客户端程序\r\n14.3 查找Web服务\r\n14.4 本章小结\r\n\r\n第IV部分 调整和调试\r\n\r\n第15章 调整和调试应用程序\r\n\r\n15.1 监视ASP.NET应用程序性能\r\n15.2 实现性能目标\r\n15.2.1 调整程序代码\r\n15.2.2 调整ASP.NET的使用\r\n15.2.3 调整数据库使用\r\n15.3 通用的调试提示\r\n15.3.1 检查ASP.NET环境\r\n15.3.2 尽早测试、经常测试\r\n15.3.3 编写trace消息\r\n15.3.4 编写事件日志消息\r\n15.4 利用Microsoft CLR调试器进行调试\r\n15.5 本章小结
许多人都享受过创建万维网页的乐趣,或者他们的职业就是设计万维网页。尽管HTML存在局限性,也许正是因为这种局限性,使创建有效的Web页成为一种既有挑战性,又有成就感的经历。但是,在需要创建成千上万张Web页时,您原本高涨的情绪也许很快就会低落。如何保持网页的一致性就成了关键的目标。能够自动完成任务的吸引力在与时俱增。
根据一些简单的记录显示,当初正是利用应用程序发明了万维网,现在却发现应用程序也只涵盖了Web应用范围的一小部分。现在的信息量大得惊人,以至于任何一组Web开发人员都根本无法在合理的时间内对其进行更新和组织,同时也使得Web访问者无法仅通过点击简单的超链接就找到所需信息。
现代的Web站点——即使是小型的个人站点——都是完整的信息系统,其中包含各种各样的输入、输出、处理和交互信息。与传统的信息系统不同的是,Web上的系统所需要的开发时间是以天和星期来计算的,而不是以月和年来计算。这就为高效的、易于学习的操作环境、编程语言、数据库接口以及系统服务提供了展示自身的舞台。Microsoft的.NET计划提供了所有这些要素,而用户为此所需支付的只不过是Windows操作系统自身的价格。
不仅是Web站点变成了信息系统;信息系统也变成了Web站点。基于Web的系统现在非常易于部署和使用,以至于在许多情况下,新的系统用Web技术替代了面向终端的体系结构和客户端一服务器体系结构。而且,.NET技术还为这样的开发提供了大量具有工业优势的开发工具。
本书介绍了下列.NET技术的基础知识,从而使读者可以开发各种基于Web的信息系统:
● ASP.NET 一种用于Web页的高级操作环境,Web页的程序代码可以在Web服务器上执行。
● Visual Basic .NET 一种功能强大、易于学习的编程语言,提供了对所有.NET特性和服务的访问。
● AD0.NET一种可以访问所有类型数据库系统的全新方法。
因为本书中的Web页使用了ASP.NET,所以在Microsoft Web服务器上需要有.NET Framework和软件开发工具箱。Microsft为其近期发布的绝大多数操作系统提供了Web服务器,但是.NET Framework和SDK需要安装带有Microsoft Internet信息服务(IIS)的Windows 2000或Windows XP Professional操作系统。因此,要想运行我们所开发的任何ASP.NET页,都需要访问运行在上述操作系统上的Web服务器。同样,要想看到这些Web页,需要用到Microsoft Internet Explorer。可以在www.microsoft.com/windows/ie下载最新版本。
Visual Studio .NET中包含到.NET Framework和SDK,也可以从www.microsof.com/下载。不同版本之间的主要区别是,Visual Studio.NET提供了图形化集成开发环境,而从网上下载的版本需要我们另外使用文本编辑器。然而,同样的代码在这两种环境中都可以运行。本书只讨论代码,并不假设大家都购买了Visual Studio.NET。
对于使用哪一种HTML编辑器,ASP.NET同样没有任何要求;我们可以使用Microsoft FrontPage 2002、记事本或是任何其他编辑器。但是要注意,ASP.NT代码含有任何浏览器永远都无法识别的XML标记符。如果编辑器没有声明与ASP.NET兼容,就要特别小心图形化HTML编辑器对于这种代码的处理方式。
访问数据库需要几个软件层,所有这些软件都被捆绑在被称为Microsoft数据访问组件((Microsoft DataAccess Components,MDAC)的软件包中。MDAC 2.7是第一个在发布时包含AD0.NET的MDAC版本,因此要想让本书中的页面正常运行,至少需要MDAC 2.7以上的版本。可以从www.microsoft.com/data下载最新版本的MDAC。
从Web数据库页可以访问几乎任何类型的数据库,但本书中所使用的数据库是用Microsoft Access创建的。之所以决定采用Microsoft Access,主要是考虑到数据库的易用性和可访问性;Access 几乎是我们身边最普遍,也是最易于使用的数据库系统。然而,如果大家的应用程序要求大事务处理容量或是极高的可靠性,书中也解释了如何访问Microsoft SQL Server数据库。
本书结构
本书由四大部分组成,按照以下内容来组织:
·第I部分:Web数据库页面介绍 这一部分从较高的层次介绍了Web数据库,并且解释了如何创建一个简单的Web数据库页。简而言之,这是对以下各部分的一个概述。
·第II部分:基本概念 首先解释了如何配置Web服务器,使其可以运行本书或来自其他地方的ASP.NET页。这里的Web服务器可以是运行在个人计算机上的个人Web服务器,也可以是功能全面的生产服务器或是介于两者之间的服务器。然后,这一部分提供了关于ASP.NET操作环境、Visual Basic.NET编程语言、数据库的设计和使用以及ASP.NET页和数据库之间接口的背景信息。
本书的这一部分含有许多参考材料,读者在第一次阅读时可以一带而过,也可以暂时先跳过去。以后需要时,大家随时可以回来查阅相关信息。
·第III部分:开发应用程序 解释了如何创建各种实用的应用程序。第8章解释了如何创建一个无须维护(zero-maintenance)的图库:在这个图库中可以自动为图片创建缩略图和菜单页。第9—13章解释了如何实现分类广告站点的核心功能,第14章解释了如何创建和使用Web访问。
这些章节中的Web页并不是一些不成熟的Web页;只要在自己的站点中添加相应的元素就可以扩展各种功能。毕竟,大家都希望自己的站点比教科书上的例子拥有更多的特性。
·第IV部分:调整和调试 提供了一系列提高web数据库页面性能和诊断出错页面的建议。本书介绍的最后一个主题是解释如何开始一个交互式调试会话,在会话中每次执行web数据库页的一条语句,高亮显示当前语句,并且可以访问所有当前值和属性。
注意 本书示例中的加粗代码均表示添加的新语句。练习文件下载地址:http://www.wenyuan.com。
Microsoft Press支持
Microsoft Press尽了一切努力来确保本书内容的精确性。Microsoft Press通过万维网提供了本书的勘误信息:
http://www.microsoft.com/mspress/support
如果要直接与Microsoft Press Knowledge Base联系,或是提出与本书有关的问题,可以浏览http://www.microsoft.com/mspress/support/search.asp
如果您对本书有什么建议、问题或想法,或者有些问题是Knowledge Base没有回答的,请通过电子邮件将其发往Microsoft Press:
mspinput@microsoft.com
或者邮寄到
Microsoft Press
Attn:Web Database Development Step By Step .NET Edition Editor
0ne Microsoft Way
Redmond.WA 98052-6399
请注意,上述地址并不提供对软件产品的技术支持。