深入ASP.NET 2.0开发
分類: 图书,计算机/网络,程序设计,ASP,
作者: (美)阿姆斯特朗(ArmstrongD.)著,汤涛,邰晓翠译
出 版 社: 人民邮电出版社
出版时间: 2008-2-1字数: 792000版次: 1页数: 515印刷时间: 2008/02/01开本: 16开印次: 1纸张: 胶版纸I S B N : 9787115169471包装: 平装编辑推荐
本书是针对中高级程序员,从实战需要而不是知识点本身的逻辑出发,讲述了如何充分运用ASP.NET 2.0的各种新增的和高级的特性(包括配置策略、异常管理、可重用组件的开发、成员资格、角色管理、个性化等等),高效而且高质量地开发ASP.NET网站项目。 作者与ASP.NET核心开发人员Rob Howard曾共事多年。对他设计的ASP.NET诸多至关重要的特性了如指掌,深得其真传。这在本书中得到了充分体现。此外,书中穿插了作者在10多年开发经历中解决各种实战问题所积累大量实例、经验和技巧,不仅让读者知道如何进行特定的设计和实现,而且还能够领悟其中的道理。
内容简介
本书主要介绍如何使用ASP.NET 2.0开发坚实的基于Web的业务应用程序。除讲解了ASP.NET 2.0的新特性(母版页、主题、皮肤、Web部件框架等 )之外,还深入讨论了对真实ASENET项目至关重要的主题,包括配置策略、异常管理、可复用控件开发、用户配置管理、搜索、报表、数据输入、文件上传、安全加密等。
书中提供了大量实践例子和作者的经验之谈,适合已有ASENET经验的中高级读者。
作者简介
Damon Armstrong:资深ASP.NET程序员,毕业于得克萨斯大学,从事商业应用程序开发超过10年,尤其擅长VB.NET和ASP.NET。曾在,ASP.NET高手云集的Telligent系统公司担任技术顾问,获益匪浅,目前在著名IT咨询企业Cogent公司担任资深软件架构师。
目录
前言
第1章 配置策略
1.1 ASP.NET 2.0中的新配置工具
1.1.1 Web站点管理工具
1.1.2 IIS中的ASP.NET属性页
1.2 配置基础
1.2.1 应用程序设置
1.2.2 连接字符串
1.2.3 配置指导原则
1.3 强类型配置类
1.3.1 强类型配置样例应用程序
1.3.2 添加Web.config文件
1.3.3 Config类
1.3.4 在代码中使用Config类
1.3.5 Config类中的错误处理
1.3.6 缓存应用程序设置和连接字符串
1.4 自定义配置节
1.5 在数据库中存储配置设置
1.5.1 何时避免使用Web.Config文件
1.5.2 创建数据库表来存储配置设置
1.5.3 避免SQL注入攻击
1.5.4 创建DataConfig类
1.5.5 从数据库读取配置值
1.5.6 把配置值写入到数据库
1.5.7 DataConfig类的属性
1.5.8 在数据库中序列化和反序列化对象
1.6 小结
第2章 异常管理
2.1 异常管理基础
2.1.1 什么是异常
2.1.2 使用Try Catch语句处理异常
2.1.3 使用多个Catch语句
2.1.4 使用When子句捕获特定的错误
2.1.5 使用Finally关键字
2.1.6 抛出异常
2.1.7 创建自定义异常类
2.1.8 内部异常和异常包装
2.1.9 异常传播
2.2 全局错误处理
2.2.1 IIS与ASP.NET错误
2.2.2 定义ASP.NET的默认错误页面
2.2.3 使用ASPX页面作为默认错误页面
2.2.4 在ASP.NET中定义自定义错误页面
2.2.5 在IIS中定义自定义错误页面
2.2.6 使用应用程序错误事件
2.3 记录异常以便分析
2.3.1 选择异常日志记录工具
2.3.2 架构概览
2.3.3 创建ExceptionLog表来存储数据
2.3.4 ExceptionLog类
2.3.5 ExceptionLogCollection类
2.3.6 ExceptionLogger类
2.3.7 在代码中使用ExceptionLogger类
2.3.8 在线浏览异常
2.4 小结
第3章 母版页、主题和控件皮肤
3.1 母版页
3.1.1 创建母版页
3.1.2 创建內容页面
3.1.3 从內容页面中访问母版页
3.1.4 为应用程序定义默认的母版页
3.1.5 在代码中修改母版页
3.1.6 嵌套母版页
3.2 主题和控件皮肤
3.2.1 创建主题
3.2.2 往主题中添加CSS
3.2.3 为主题创建控件皮肤
3.2.4 禁用控件皮肤
3.2.5 为主题创建命名的控件皮肤
3.2.6 把主题应用到指定的页面或整个应用程序
3.2.7 对主题进行编程
3.3 小结
第4章 开发可复用的组件:皮肤化的页面消息控件
4.1 ASP.NET 2.0中的新控件特性
4.1.1 用户控件的设计时呈现
4.1.2 全局标签注册
4.2 使用C0ntrolstate开发服务器控件
4.2.1 建立ControlStdteExample控件
4.2.2 创建ControlState演示页面
4.2.3 在演示页面申查看ControlState的行为
4.3 构建一个皮肤化的页面消息控件
4.3.1 什么是皮肤化的控件
4.3.2 服务器控件如何操纵UserContro1
4.3.3 皮肤化控件如何实现
4.3.4 皮肤化页面消息服务器控件的架构
4.3.5 UserControl皮肤的存储位置
4.3.6 设立消息Web控件项目
4.3.7 皮肤化wcb控件的类
4.3.8 MessageDataCollection类
4.3.9 为控件库定义一个标准的标签前缀
4.3.10 设计时呈现
4.3.11 在Web项目中引用PageMssageControl
4.3.12 创建PageMssageControl皮肤文件
4.3.13 使用PageMssageControl
4.4 小结
第5章 用于表单验证的用户管理工具和登录控件
5.1 ASP.NET的表单验证
5.1.1 验证模式
5.1.2 为应用程序配置验证模式
5.1.3 验证票据的概念
5.1.4 验证cookie
5.1.5 指定默认登录页面和登录重定向URL
5.1.6 其他表单验证配置选项
5.1.7 手动实现表单验证
5.2 处理成员资格和角色对象
5.2.1 Memebership对象
5.2.2 角色对象
5.2.3 对成员资格和角色对象进行编程
5.2.4 配置Memebership和Role提供程序
5.3 用Web站点管理工具管理用户和安全性
5.3.1 打开Web站点管理工具
5.3.2 Home选项卡
5.3.3 Provider选项卡
5.3.4 Security选项卡
5.3.5 添加、编辑和删除用户
5.4 ASP.NET 2.0登录控件
5.4.1 模板化控件
5.4.2 创建模板
5.4.3 Login控件
5.4.4 LoginView控件
5.4.5 PasswordRecovery控件
5.4.6 LoginStatus控件
5.4.7 LoginName控件
5.4.8 CreateUserWizard控件
5.4.9 ChangePassword控件
5.5 小结
第6章 管理用户配置
6.1 用户配置基础
6.1.1 Profile对象
6.1.2 启用和禁用用户配置
6.1.3 在Web.config中定义用户配置属性
6.1.4 创建用户配置属性组
6.1.5 实现用户配置属性类
6.1.6 强类型属性
6.1.7 ProfileManger类
6.2 处理匿名用户配置
6.2.1 启用匿名用户配置标识
6.2.2 什么时候使用匿名标识
6.2.3 匿名标识的缺点
6.2.4 定义匿名用户配置属性
6.2.5 用IsAnonvmous避免匿名写入异常
6.2.6 重要的默认属性值
6.2.7 创建用户配置迁移代码
6.3 创建简单的定向广告
6.3.1 定义用户配置属性以跟踪内容偏好
6.3.2 构建定向广告的示例页面
6.4 购物车自定义属性
6.4.1 创建购物车
6.4.2 在Web.config中定义ShoppingCart属性
6.4.3 构建产品显示组件以向购物车添加产品
6.4.4 构建购物车演示页面
6.4.5 带购物车的用户配置迁移
6.5 小结
第7章 使用Web部件框架构建门户
7.1 Web部件框架的概念
7.1.1 Web部件的概念
7.1.2 Web部件连接
7.1.3 门户页面显示模式
7.1.4 用区域定义门户区块
7.1.5 用户和共享范围
7.1.6 关闭和删除Web部件
7.1.7 隐藏和关闭Web部件
7.2 Web部件的接口、类和控件
7.2.1 IWebPart接口
7.2.2 Part类
7.2.3 WebPart类
7.2.4 GenericWebPart包装类
7.2.5 NebPartManager控件
7.2.6 ProxyNebPartHanager控件
7.2.7 Web部件区域
7.2.8 WebPartZone控件和静态Web部件
7.2.9 CatalogZone控件和相关的目录部件
7.2.10 EditorZone控件和相关的编辑器部件
7.2.11 ConnectionsZone控件
7.3 构建Web部件示例
7.3.1 定义Web部件属性
7.3.2 实现基于UserControl的Web部件
7.3.3 实现自定义Web部件
7.4 高级Web部件主题
7.4.1 为Web部件添加自定义动词
7.4.2 连接提供方和接收方
7.4.3 导出Web部件配置文件
7.5 小结
第8章 适用于业务应用程序的有效搜索工具和技术
8.1 创建Sq1QUery工具
8.1.1 目标和架构概览
8.1.2 Globals.vb中的枚举
8.1.3 SalField类
8.1.4 SalFieldCollection类
8.1.5 分析对象模型搜索中的WHERE子句
8.1.6 ISqlCondition接口
8.1.7 SalCondition类
8.1.8 SqlConditionGroup类
8.1.9 构建SqlQuery类
8.1.10 SqlQuery类
8.1.11 使用SqlQuery对象构建查询
8.1.12 用SqlQuery/类执行查询
8.1.13 用SqlQuery类执行分页查询
8.2 常用的搜索函数
8.2.1 日期范围搜索
8.2.2 使用DateRanqeSearch
8.2.3 关键字搜索
8.2.4 使用CreateKeywords函数
8.3 显示基本和高级的搜索
8.3.1 ISearchControl接口
8.3.2 创建基本的搜索表单(SimoleForm.ascx)
8.3.3 创建高级搜索表单(AdvancedForm.ascx)
8.3.4 实现主搜索页面(EmployessSearch.aspx)
8.3.5 基于用户控件的搜索表单的优势
8.4 小结
第9章 构建可复用的报表框架
9.1 构建报表框架
9.1.1 抽象类基础
9.1.2 解决方案架构
9.1.3 数据库
9.1.4 ISearchControl接口
9.1.5 分页和IpaginationControl接口
9.1.6 ReportFramework抽象类
9.2 使用报表框架创建报表
9.2.1 使用IsearchControl接口构建搜索表单
9.2.2 创建分页导航组件
9.2.3 构建报表页面的布局
9.2.4 开发报表页面的后置代码
9.2.5 运行报表页面
9.3 小结
第10章 基于Web的向导:避免重复的数据输入
10.1 Wizard控件概述
10.1.1 Wizard控件的布局和组成
10.1.2 重要的向导属性和事件
10.1.3 把步骤添加到向导
10.1.4 控制向导的导航
10.1.5 使用模板
10.2 模糊音搜索
10.2.1 语音码和Soundex函数
10.2.2 Difference函数的语音接近匹配
10.3 创建添加雇员向导
10.3.1 业务对象和实用函数
10.3.2 添加雇员向导
10.3.3 整个试一下
10.4 小结
第11章 上传文件
11.1 数据库与文件系统的比较
11.1.1 事务支持
11.1.2 实施参照完整性以及避免破坏文件链接
11.1.3 安全考虑
11.1.4 性能
11.1.5 数据备份和复制
11.1.6 编程的复杂性
11.1.7 未来的考虑
11.2 上传文件
11.2.1 FileUpload控件
11.2.2 用FileUpload控件保存丈件
11.3 上传多个文件
11.3.1 客户端的多个文件上传
11.3.2 在服务器端保存多个文件
11.4 在数据库中保存文件
11.4.1 创建一个数据库表来存储文件
11.4.2 从客户端传递文件到服务器
11.4.3 保存单个文件到数据库
11.4.4 保存多个文件到数据库
11.5 从数据库获取上传的文件
11.6 小结
第12章 安全和加密
12.1 基本安全概念
12.1.1 安全术语
12.1.2 验证与授权
12.1.3 最小权限访问
12.1.4 进程、线程和令牌
12.1.5 角色扮演
12.1.6 委托
12.1.7 访问令牌和角色扮演的例子
12.2 ASP.NET安全架构概览
12.2.1 通过浏览器发送最初的请求
12.2.2 基于IP地址或者域的IIS授权
12.2.3 IIS验证
12.2.4 ASP.NET ISAPI扩展和ASP.NET工作进程
12.2.5 应用程序对象和请求的安全上下文
12.2.6 ASP.NET的验证模块
12.2.7 URL授权模块
12.2.8 文件授权模块
12.2.9 处理真正的请求
12.3 安全配置
12.3.1 IIS的安全配置
12.3.2 用NTFS权限加强文件安全性
12.3.3 ASP.NET的安全配置设置
12.4 加密敏感信息
12.4.1 加密配置设置
12.4.2 用单向加密散列数据
12.4.3 用双向加密实现数据的加密和解密
12.4.4 使用加密库
12.5 小结
第13章 使用HTTP处理器:请求处理、图片生成以及内容管理
13.1 HTTP处理器概览
13.1.1 IIS和ASP.NET HTTP流水线处理模型
13.1.2 HTTP处理器的常规用法
13.1.3 实现IHttpHandler接口
13.1.4 在IIS中映射文件扩展名
13.1.5 在ASP.NET中配置HTTP处理器
13.2 使用URL改写处理虚拟文件
13.2.1 创建报表页面
13.2.2 构建XlsReportHandler
13.2.3 HTTP处理器设计考虑
13.2.4 使用XlsReportHandler获习文报表
13.3 用HTTP处理器生成缩略图
13.3.1 目标和解决方案架构
13.3.2 构建ThumbnailHandler
13.3.3 酉己置ThumbnailHandler
13.3 4 浏览Thumbnails
13.4 内容管理的后台
13.4.1 目标和解决方案架构
13.4.2 内容数据库设计
13.4.3 创建CotrtertManagementHandler
13.4.4 配置CotrtertManagementHandler
13.4.5 使用母版页创建内容模板
13.4.6 构建FrontController.aspx页面
13.4.7 构建FrontController.aspx.vb后置代码
13.4.8 Web用户控件和NoActionForm
13.4.9 内容管理后台的下一步
13.5 小结