ASP.NET 3.5高级程序设计(第2版)
分類: 图书,计算机/网络,程序设计,ASP,
作者: (美)麦克唐纳博思工作室 译
出 版 社: 人民邮电出版社
出版时间: 2008-11-1字数:版次: 1页数: 1194印刷时间:开本: 16开印次:纸张:I S B N : 9787115187710包装: 平装编辑推荐
“对于想真正精通ASP.NET的人,我强烈推荐本书。它远远超出了同类图书,绝不避重就轻。讨论了如何解决许多常见的难题。”
——David Hayden,Microsoft MVP。资深Web软件工程师
“ASP.NET工程师的必读之作!不仅是绝佳的学习教程,也是不可或缺的参考手册。”
——.NET Developer's Journal
ASP.NET3.5堪称微软Web开发技术的里程碑。它不仅完善TASP.NET2.0的各项功能,还添加了几个极具创新性的特性LINQ、ASP.NETAJAX和SiIverlight,使微软在风云变幻的Web技术领域依然能够笑傲群雄。
内容简介
本书是ASP.NET领域的鸿篇巨制,全面讲解了ASP.NET 3.5的各种特性及其背后的工作原理,并给出了许多针对如何构建复杂、可扩展的网站从实践中得出的建议。本书还深入讲述了其他ASP.NET图书遗漏的高级主题,如自定义控件的创建、图像处理、加密等。此外,本书专门提供了两章的内容来教你如何用Ajax技术制作快速响应的页面,以及如何使用微软的ASP.NET AJAX平台。另外,还介绍了微软的新一代RIA技术Silverlight 。
本书适用于各层次ASP.NET 3.5程序员。
作者简介
Matthew MacDonald世界顶尖的微软技术专家。微软MVP。他是Inside Visual Bask、ASP Today、Hardcore Visual Studio.NET等著名软件开发杂志的特约作者,还写作了多部脍炙人口的编程畅销书,本书为其代表作。
目录
第一部分 核心概念
第1章 ASP.NET简介
1.1 Web开发技术的演进
1.2 ASP.NET的7大要点
1.3 ASP.NET 3.5:故事在继续
1.4 总结
第2章 Visual Studio
2.1 .NET开发模型
2.2 Visual Studio集成开发环境
2.3 代码编辑器
2.4 编码模型
2.5 Web项目
2.6 Visual Studio调试
2.7 Visual Studio宏
2.8 Web Development Helper
2.9 总结
第3章 Web窗体
3.1 页面处理
3.2 Web窗体处理阶段
3.3 作为控件容器的页面
3.4 Page类
3.5 总结
第4章 服务器控件
4.1 服务器控件的类型
4.2 HTML服务器控件
4.3 Web控件
4.4 List控件
4.5 输入验证控件
4.6 富控件
4.7 总结
第5章 ASP.NET应用程序
5.1 剖析ASP.NET应用程序
5.2 global.asax应用程序文件
5.3 ASP.NET配置
5.4 .NET组件
5.5 扩展HTTP管道
5.6 总结
第6章 状态管理
6.1 ASP.NET状态管理
6.2 视图状态
6.3 在页面间传送信息
6.4 cookie
6.5 会话状态
6.6 应用程序状态
6.7 总结
第二部分 数据访问
第7章 ADO.NET基础
7.1 ADO.NET架构
7.2 Connection类
7.3 Command类和DataReader类
7.4 事务
7.5 提供程序无关的代码
7.6 总结
第8章 数据组件和DataSet
8.1 构建数据访问组件
8.2 非连接的数据
8.3 DataSet类
8.4 DataAdapter类
8.5 DataView类
8.6 强类型DataSet
8.7 总结
第9章 数据绑定
9.1 基本的数据绑定
9.2 数据源控件
9.3 SqlDataSource
9.4 ObjectDataSource
9.5 数据源控件的限制
9.6 总结
第10章 富数据控件
10.1 GridView
10.2 格式化GridView
10.3 GridView行选择
10.4 对GridView排序
10.5 GridView分页
10.6 GridView模板
10.7 ListView
10.8 DetailsView和FormView
10.9 高级网格
10.10 总结
第11章 缓存和异步页面
11.1 理解ASP.NET缓存
11.2 输出缓存
11.3 数据缓存
11.4 缓存依赖
11.5 自定义缓存依赖
11.6 异步页面
11.7 总结
第12章 文件和流
12.1 使用文件系统
12.2 使用流读写文件
12.3 序列化
12.4 总结
第13章 LINQ
13.1 LINQ基础
13.2 LINQ to DataSet
13.3 LINQ to SQL
13.4 LinqDataSource
13.5 总结
第14章 XML
14.1 什么时候使用XML
14.2 XML简介
14.3 基于流的XML处理
14.4 内存中的XML 处理
14.5 搜索XML内容
14.6 验证XML内容
14.7 转换XML内容
14.8 XML数据绑定
14.9 XML和ADO.NET数据集
14.10 总结
第三部分 构建ASP.NET网站
第15章 用户控件
15.1 用户控件基础
15.2 为用户控件添加代码
15.3 动态加载用户控件
15.4 缓存部分页面
15.5 总结
第16章 主题和母版页
16.1 层叠样式表
16.2 主题
16.3 标准化网站布局
16.4 母版页基础
16.5 高级母版页
16.6 总结
第17章 网站导航
17.1 多视图页面
17.2 站点地图
17.3 TreeView控件
17.4 Menu控件
17.5 总结
第18章 网站部署
18.1 IIS
18.2 管理网站
18.3 部署你的ASP.NET应用程序
18.4 ASP.NET中的VirtualPathProvider
18.5 ASP.NET里的健康监视
18.6 总结
第四部分 安全
第19章 ASP.NET安全模型
19.1 何为创建安全软件
19.2 理解安全级别
19.3 IIS安全
19.4 ASP.NET安全架构
19.5 总结
第20章 表单验证
20.1 表单验证介绍
20.2 实现表单验证
20.3 IIS 7.0和表单验证
20.4 总结
第21章 成员资格
21.1 介绍ASP.NET的成员资格API
21.2 使用成员资格API
21.3 使用安全控件
21.4 在IIS 7.0里配置成员资格
21.5 使用成员资格类
21.6 总结
第22章 Windows验证
22.1 介绍Windows验证
22.2 实现Windows验证
22.3 身份模拟
22.4 总结
第23章 授权和角色
23.1 URL授权
23.2 文件授权
23.3 在代码中检查授权
23.4 为基于角色的授权使用角色服务
23.5 在IIS 5和IIS 6中保护非网页资源
23.6 IIS 7.0里的授权和角色
23.7 总结
第24章 用户配置
24.1 理解用户配置
24.2 使用SqlProfileProvider
24.3 自定义的用户配置提供程序
24.4 总结
第25章 加密
25.1 加密数据:机密性问题
25.2 .NET加密命名空间
25.3 理解.NET加密类
25.4 加密敏感数据
25.5 加密查询字符串
25.6 总结
第26章 自定义成员资格提供程序
26.1 自定义提供程序的架构
26.2 创建自定义提供程序的基本步骤
26.3 总结
第五部分 高级用户界面
第27章 自定义服务器控件
27.1 自定义服务器控件入门
27.2 处理不同的浏览器
27.3 控件状态和事件
27.4 扩展现有的Web控件
27.5 模板化控件
27.6 总结
第28章 设计时支持
28.1 主要成员
28.2 设计时特性
28.3 Web资源
28.4 代码序列化
28.5 控件设计器
28.6 总结
第29章 动态图形和GDI+
29.1 ImageMap控件
29.2 使用GDI+画图
29.3 在网页上嵌入动态图形
29.4 用GDI+绘制图表
29.5 总结
第30章 使用Web部件页面的门户
30.1 典型门户页面
30.2 初级Web部件页面
30.3 创建Web部件
30.4 总结
第六部分 客户端程序设计
第31章 JavaScript和Ajax技术
31.1 JavaScript本质
31.2 基本JavaScript示例
31.3 脚本注入攻击
31.4 带有JavaScript的自定义控件
31.5 框架
31.6 理解Ajax
31.7 在客户端回调中使用Ajax
31.8 总结
第32章 ASP.NET AJAX
32.1 介绍ASP.NET AJAX
32.2 服务器回调
32.3 ASP.NET AJAX服务器控件
32.4 深入客户端库
32.5 控件扩展器
32.6 总结
第33章 Silverlight
33.1 理解Silverlight
33.2 创建Silverlight项目
33.3 Silverlight本质
33.4 Silverlight和ASP.NET
33.5 绘制二维图形
33.6 动画
33.7 总结
书摘插图
第一部分核心概念
第1章ASP.NET简介
1.2ASP.NET的7大要点
1.2.4要点4:ASP.NET运行在公共语言运行库内
可能需要牢记的最重要的ASRNET特性就是,它是运行在CLR运行库环境之内的。整个.NETFramework(即所有的命名空间、应用程序以及类)称为托管代码。虽然本章不会深入探究CLR的详细知识,但是了解一些CLR的优点还是很有必要的。
自动内存管理和垃圾回收。每当你的应用程序实例化一个引用类型的对象的时候,CLR就会在托管堆上为这个对象分配所需的内存空间,但你不必手动清除这些内存。一旦不再使用这个对象(或者你的应用程序结束了),垃圾回收就会作用于这个对象。垃圾回收器会在CLR内周期性地运行,自动回收不再使用的内存空间。这个自动垃圾回收的模型让你不再需要掌握底层复杂的c++内存控制技术以及令人头疼的COM内存技术。
类型安全。当你编译一个应用程序的时候,.NET会在你的程序集中加入一些信息,用来说明一些细节,比如可用的类,它们的成员、数据类型等。最终,编译之后的代码程序集将是完全自描述的。其他应用可以使用它们而不需要任何辅助文件,编译器会在运行时校验每一个调用。这个附加的安全层能完全避免一些低级错误的出现,比如常见的内存溢出等。
可扩展的元数据。类和成员的信息仅仅是.NET存储在已编译的程序集内元数据信息中的一种。元数据描述了你的代码并允许你为运行时或者其他服务提供一些附加信息。比如,这个元数据可能会告诉调试器如何跟踪你的代码,或者它可能会告诉VisualStudio在设计时如何显示一个用户自定义控件。你同样可以在运行时服务(比如事务或者对象池)中使用这些元数据。
结构化的错误处理。.NET提供结构化的异常处理,它允许你有逻辑性地、准确地来组织错误处理步骤。可以创建单独的块来处理不同类型的错误,也可以在不同的层次之间嵌套异常处理程序。
多线程。CLR提供了一个各种类都可以使用的线程池。举例来说,你可以调用方法,读取文件或者同Web月E务进行异步通信,所有这些都不需要另外创建新线程。
……