
本书是将最新的ASP.NET3.5和Visual Studio 2008开发环境相结合,内容涵盖了ASP.NET3.5中的Web控件、主题和母版页、页面导航、数据绑定、ADO.NET数据库、XML数据操作、LINQ查询、Web Service、AJAX以及最新的MVC框架等最流行和最前沿的技术。通过这些技术的学习,使一个零基础的读者可以循序渐进地掌握Web网站开发的各种知识和技巧,最终开发出一个完整而实用的ASP.NET的网站。 本书最大的特点在于实例众多、图文结合,讲解到位、实践性强。适合初、中级ASP.NET开发人员参考使用,对大中专院校计算机专业的学生有很高借鉴价值。 读者对象:本书DVD光盘内容丰富,包括53个小时的配套视频、PPT教学课件、3小时的开发工具讲解,超过3000页技术文档和本书源代码。
为什么学习ASP.NET3.5 Microsoft公司推出的ASP.NET3.5技术使用Visual Studio 2008开发环境,为用户提供了建立强大的企业级Web应用服务的编程框架。作为新一代Web应用程序开发平台,它已经成为网络应用的主流,使得网络开发人员可以更加轻松的掌握并加以应用。 ASP.NET3.5与之前的ASP.NET2.0相比,具有许多优点:(1)ASP.NET3.5提供了非常多的Web控件,极大地提高了开发的效率。(2)提供了多种支持控件的数据源格式,如:Linq数据集、XML文件、对象等。(3)支持多种框架版本和多种框架版本下的多语言开发。(5)添加了母版页新控件,统一网站界面的布局。(4)无需IIS支持就可以实现Web Server等。 可以毫不夸张的说掌握了ASP.NET3.5网站的开发技术,就站在了Web程序开发的技术前沿。 为什么要写这本书 在我周围有很多的初学者都想学习掌握好一门编程语言,但是由于以下的这些原因,导致了半途而废。 高度抽象的概念。 讲解太专业化,不能很好的理解。 无法及时解决实际中碰到的种种问题。 不能很好的使用开发工具。 为了让初学者不再对学习编程敬而远之,提高学习的信心和决心,本人写了本书,希望通过这本书的学习,让初学者能快速上手,轻松愉快地掌握ASP.NET3.5网站开发的各种技术。 本书的特色 上机题的设置 在本书中,每章都有作者从面试和相关考试中精心挑选出来的上机题。目的是通过上机题的练习使读者可以对本章知识技术的掌握程度进行检验,找出自己的不足之处,以便有针对性的强化。 版本最新 本书采用最新的ASP.NET3.5技术和Visual Studio 2008开发环境,在介绍各个ASP.NET3.5的知识点和技术时,同时结合了它们的新功能和新特性,使读者能够紧跟上技术时代的潮流。 配套视频 针对本书中技术、实训和大量上机练习题均提供了多媒体演示视频,从界面设计到关键代码的讲解,由浅入深,循序渐进将基础内容和实例效果完全的展示给读者。本书同时提供了赠送项目的多媒体视频教学,各种数据库的多媒体视频教学以及VS 2008开发工具的视频教学。 电子教案(PPT) 本书是一本面向初学者的ASP.NET3.5网站开发的技术教程,为了读者学习的方便,本书做了随书教学课件,可以做为老师的参考,也可以做为高校和培训机构教材使用。 技术文档 提供超过3000页的技术文档,文档涉及HTML、ASP.NET Ajax、C#开发技术,Access、SQL Server 2000、SQL Server 2005数据库使用技术等。 答疑互动 读者可以通过封面上的QQ和网址寻求关于本书的技术支持,和我们进行技术方面的交流和答疑。 面向的读者 本书既可以作为ASP.NET初学者的培训教材,也可以作为具有一定编程经验的ASP.NET程序开发人员的参考书,还适合ASP.NET自学者和大专院校学生阅读。 鸣谢 本书主要由张联锋、陈文臣主持编写,参加本书编写工作的还有胡书敏、胡荷芬、张彬、范秀平、庞永庆、卜炟、沈毅、许小荣、来羽、袁宝玺、林登奎、葛杰、闫书磊、张华杰、张永春、申士爱和郭斌等。由于编写时间仓促,作者水平有限,书中错误和纰漏之处在所难免,欢迎广大读者、同仁批评指正。 编 者 2011.5
第1章 ASP.NET3.5开发基础 1 1.1 ASP.NET简介 1 1.1.1 .NET简介 1 1.1.2 ASP.NET简介 2 1.2.1 Visual Studio 2008 3 1.2.2 安装和配置IIS 7 实训1.1——创建第一个ASP.NET3.5应用程序 14 常见疑难解答 15 上机练习 15 第2章 C#语言简介 17 2.1 概述 17 2.1.1 大小写的敏感性 17 2.1.2 注释 17 2.1.3 语句终止符 18 2.1.4 语句块 18 2.2 基本语法 19 2.2.1 数据类型 19 2.2.2 变量和常量 20 2.2.3 表达式和运算符 21 2.2.4 装箱和拆箱 23 2.2.5 泛型 23 2.3 数组 27 2.4 控制语句 29 2.4.1 条件语句 29 2.4.2 循环语句 32 2.4.3 跳转语句 34 2.4.4 异常处理 35 实训2.1——冒泡排序 37 2.5 面向对象设计 38 2.5.1 类和对象 39 2.5.2 继承 41 2.5.3 重载 41 2.5.4 事件和委托 42 实训2.2——研究生类UnderGraduate 44 2.6 C#高级应用 47 2.6.1 隐型局部变量 47 2.6.2 扩展方法 48 2.6.3 Lambda表达式 49 常见疑难解答 50 上机练习 51 第3章 ASP.NET控件 53 3.1 HTML控件 53 3.1.1 HTML控件结构 53 3.1.2 HTML控件的常用属性 54 3.1.3 常用的HTML控件 55 3.1.4 应用举例 56 3.2 基本的Web控件 57 3.3 服务器控件类 59 3.3.1 基本属性 59 3.3.2 服务器控件的事件 62 3.4 列表控件 64 3.4.1 ListBox 64 3.4.2 DropDownList 66 3.4.3 CheckBoxList 67 3.4.4 RadioButtonList 67 3.4.5 BulletedList 68 实训3.1——购物篮 69 3.5 验证控件 72 3.5.1 RequiredFieldValidator控件 72 3.5.2 CompareValidator控件 73 3.5.3 RangeValidator控件 75 3.5.4 RegularExpressionValidator控件 76 3.5.5 CustomValidator控件 77 实训3.2——用户登录认证 78 3.6 Rich控件 80 3.6.1 Calendar控件 80 3.6.2 AdRotator控件 83 实训3.3——公益广告展播 84 常见疑难解答 85 上机练习 86 第4章 用户控件 89 4.1 概述 89 4.2 创建用户控件 90 4.3 用户控件的使用 92 4.4 定义用户控件的属性和事件 92 实训4.1——登录控件 94 常见疑难解答 97 上机练习 98 第5章 样式、主题和母版页 99 5.1 样式 99 5.1.1 样式的语法 100 5.1.2 使用样式 103 5.1.3 样式创建器 105 5.1.4 CSS属性窗口 107 5.1.5 创建和应用样式文件 108 5.2 主题 110 5.2.1 概述 110 5.2.2 主题的创建 111 5.2.3 主题的应用 112 5.2.4 SkinID的应用 113 5.2.5 主题的禁用 114 5.3 母版页 114 5.3.1 概述 114 5.3.2 创建母版页 115 5.3.3 在母版页中放入网页的方法 118 实训5.1——酒店管理系统框架 120 常见疑难解答 122 上机练习 123 第6章 页面导航 125 6.1 网站地图 125 6.1.1 定义网站地图 126 6.1.2 把站点文件绑定到页面 128 6.2 导航控件 129 6.2.1 TreeView控件 129 6.2.2 Menu控件 131 6.2.3 SiteMapPath控件 134 常见疑难解答 135 上机练习 136 第7章 ADO.NET数据库编程 139 7.1 ADO.NET简介 139 7.2 连接数据库 140 7.2.1 建立SQL Server数据库 140 7.2.2 连接SQL Server数据库 143 7.3 操作数据 144 7.3.1 使用Command类 144 7.3.2 使用存储过程 146 7.4 使用DataReader 148 7.5 填充数据集 151 7.5.1 使用DataAdapter 151 7.5.2 使用DataSet 153 7.5.3 访问数据集 158 常见疑难解答 160 上机练习 162 第8章 数据绑定和数据控件 165 8.1 数据绑定概述 165 8.1.1 单值绑定 165 8.1.2 多值绑定 166 8.2 数据源控件 166 8.2.1 SqlDataSource控件 167 8.2.2 SqlDataSource控件的属性 169 8.2.3 使用SqlDataSource控件 170 8.3 GridView控件 173 8.3.1 GridView控件概述 173 8.3.2 在GridView Web服务器控件中分页 174 8.3.3 对GridView Web服务器控件中的数据进行排序 176 8.4 DetailsView控件 177 8.4.1 属性 177 8.4.2 在DetailsView控件中显示数据 178 8.4.3 在DetailsView控件中操作数据 178 8.5 FormView控件 179 8.6 ListView控件 180 实训8.1——股票池 180 常见疑难解答 183 上机练习 184 第9章 XML数据操作 187 9.1 XML概述 187 9.2 XML的语法 188 9.3 文档类型定义 189 9.3 可扩展样式语言 191 9.4 Xpath 193 9.5 访问和操作XML 194 9.5.1 .NET中的DOM概述 194 9.5.2 创建XML文档 194 9.5.3 将XML读入文档 195 9.5.4 选择节点 196 9.5.5 创建新节点 196 9.5.6 修改XML文档 198 9.5.7 删除XML文档的节点、属性和内容 198 9.5.8 保存XML文档 199 实训9.1——留言簿 199 9.6 XML数据绑定控件 204 常见疑难解答 206 上机练习 207 第10章 LINQ技术 209 10.1 概述 209 10.2 LINQ基础 210 10.2.1 LINQ查询介绍 210 10.2.2 LINQ和泛型 212 10.2.3 基本查询操作 213 10.3 LINQ到ADO.NET 217 10.3.1 LINQ到SQL基础 217 10.3.2 对象模型和对象模型的创建 217 10.3.3 查询数据库 221 10.3.4 更改数据库 222 10.4 LinqDataSource控件 224 实训10.1——简单留言板 227 常见疑难解答 232 上机练习 233 第11章 ASP.NET常用对象和状态管理 235 11.1 ASP.NET中的常用对象 235 11.1.1 Page类 235 11.1.2 Request对象 239 11.1.3 Response对象 241 11.1.4 Server对象 244 11.2 ASP.NET状态管理 247 11.2.1 Session对象 247 11.2.2 Cookie对象 250 11.2.3 ViewState对象 253 11.2.4 Application对象 256 实训11.1——在线投票 258 常见疑难解答 262 上机练习 263 第12章 Web服务 265 12.1 Web Service概述 265 12.1.1 Web Service 的概念 265 12.1.2 Web Service的基本构成 267 12.1.3 实现一个基本的Web服务 268 12.2 Web服务协议 273 12.2.1 WSDL(Web服务描述语言) 273 12.2.2 SOAP(简单对象访问协议) 275 12.2.3 UDDI(统一描述、发现和集成协议) 276 12.3 Web服务的应用 277 12.3.1 使用存在的Web服务 277 12.3.2 Web服务实现数据库操作 280 实训12.1——计算器 283 常见疑难解答 289 上机练习 290 第13章 ASP.NET AJAX技术 291 13.1 ASP.NET AJAX技术概述 291 13.1.1 体系结构 292 13.1.2 客户端特征 292 13.1.3 服务器端特征 292 13.1.4 创建ASP.NET AJAX程序 293 13.2 ASP.NET AJAX核心控件 295 13.2.1 ScriptManager控件 295 13.2.2 UpdatePanel控件 298 13.2.3 UpdateProgress控件 301 13.2.4 Timer控件 305 13.3 AJAX CONTROL TOOLKIT 307 13.3.1 AJAX CONTROL TOOLKIT简介 308 13.3.2 使用示例 310 实训13.1——添加用户信息 311 常见疑难解答 315 上机练习 316 第14章 ASP.NET MVC框架 319 14.1 ASP.NET MVC简介 319 14.1.1 什么是MVC 319 14.1.2 ASP.NET MVC 321 14.1.3 安装ASP.NET MVC 框架 322 14.2 ASP.NET MVC应用程序 323 14.2.1 MVC应用程序的创建 324 14.2.2 MVC应用程序的结构 325 14.2.3 路由 327 14.2.4 MVC应用程序的执行过程 331 14.2.5 构建模型 332 14.2.6 控制器 334 14.2.7 视图 336 实训14.1——餐饮管理系统中的类别管理模块 339 常见疑难解答 344 上机练习 345 第15章 网上博客 347 15.1 系统分析与设计 347 15.1.1 系统需求分析 347 15.1.2 系统模块设计 347 15.1.3 系统运行演示 350 15.2 系统数据库设计 352 15.2.1 数据库表设计 352 15.2.2 数据库表关系 355 15.2.3 创建数据库实体类映射 356 15.3 实体类模块 357 15.4 数据库管理模块 358 15.5 业务逻辑模块 364 15.6 博客页面显示模块 366 15.6.1 使用母版页 366 15.6.2 首页的设计 370 15.6.3 管理博客页面设计 371 15.7 博客管理模块 372 第16章 赠送项目案例 377 项目01 图书管理系统 377 01.1 系统分析与设计 377 01.2 系统数据库设计 379 01.3 系统运行示例 381 项目02 网上校友录 383 02.1 系统分析与设计 383 02.2 系统模块设计 383 02.3 系统数据库设计 384 02.4 系统运行示例 386 项目03 考勤管理系统 389 03.1 系统分析与设计 389 03.2 系统数据库设计 391 03.3 系统运行示例 393 项目04 新闻发布系统 395 04.1 系统分析与设计 395 04.2 系统数据库设计 396 04.3 系统运行示例 397 项目05 绩效管理系统 400 05.1 系统分析与设计 400 05.2 系统数据库设计 402 05.3 系统运行示例 404 项目06 博客管理系统 406 06.1 系统分析与设计 407 06.2 系统数据库设计 409 06.3 系统运行示例 411 项目07 医院管理系统 413 07.1 系统分析与设计 413 07.2 系统数据库设计 415 07.3 系统运行示例 416 项目08 仓库管理系统 418 08.1 系统分析与设计 418 08.2 系统数据库设计 420 08.3 系统运行示例 422 项目09 学生宿舍管理系统 424 09.1 系统分析与设计 424 09.2 系统数据库设计 426 09.3 系统运行示例 428 项目10 机票预订系统 430 10.1 系统分析与设计 430 10.2 系统数据库设计 432 10.3 系统运行示例 434