《深入ASP.NET 2.0开发》PDF下载

  • 购买积分:16 如何计算积分?
  • 作  者:(美)阿姆斯特朗(Damon Armstrong)著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2008
  • ISBN:7115169470
  • 页数:517 页
图书介绍:ASP.NET把开发人员的开发效率提升到一个任何其他技术无以比拟的程度,本书针对业务应用程序在开发初期面临的资源有限、预算控制和有限的时间等实际问题,讲述了如何利用ASP.NET技术创建符合实际业务需求的网站。本书根据作者在咨询中所获得的经验,给出了减少维护成本和开发时间的思路和实际做法,不仅讨论了技术实现,还讨论了实际业务背景下的设计思路。

第1章 配置策略 1

1.1 ASP.NET 2.0中的新配置工具 2

1.1.1 Web站点管理工具 2

1.1.2 IIS中的ASP.NET属性页 5

1.2 配置基础 7

1.2.1 应用程序设置 8

1.2.2 连接字符串 8

1.2.3 配置指导原则 10

1.3 强类型配置类 11

1.3.1 强类型配置样例应用程序 11

1.3.2 添加Web.config文件 11

1.3.3 Config类 12

1.3.4 在代码中使用Config类 14

1.3.5 Config类中的错误处理 15

1.3.6 缓存应用程序设置和连接字符串 16

1.4 自定义配置节 17

1.5 在数据库中存储配置设置 29

1.5.1 何时避免使用Web.config文件 29

1.5.2 创建数据库表来存储配置设置 30

1.5.3 避免SQL注入攻击 30

1.5.4 创建DataConfig类 32

1.5.5 从数据库读取配置值 32

1.5.6 把配置值写入到数据库 33

1.5.7 DataConfig类的属性 34

1.5.8 在数据库中序列化和反序列化对象 35

1.6 小结 38

第2章 异常管理 39

2.1 异常管理基础 39

2.1.1 什么是异常 40

2.1.2 使用Try Catch语句处理异常 40

2.1.3 使用多个Catch语句 42

2.1.4 使用When子句捕获特定的错误 44

2.1.5 使用Finally关键字 45

2.1.6 抛出异常 46

2.1.7 创建自定义异常类 47

2.1.8 内部异常和异常包装 49

2.1.9 异常传播 51

2.2 全局错误处理 53

2.2.1 IIS与ASP.NET错误 53

2.2.2 定义ASP.NET的默认错误页面 53

2.2.3 使用ASPX页面作为默认错误页面 54

2.2.4 在ASP.NET中定义自定义错误页面 54

2.2.5 在IIS中定义自定义错误页面 55

2.2.6 使用应用程序错误事件 56

2.3 记录异常以便分析 57

2.3.1 选择异常日志记录工具 57

2.3.2 架构概览 58

2.3.3 创建ExceptionLog表来存储数据 59

2.3.4 ExceptionLog类 59

2.3.5 ExceptionLogCollection类 66

2.3.6 ExceptionLogger类 69

2.3.7 在代码中使用Exception-Logger类 72

2.3.8 在线浏览异常 72

2.4 小结 79

第3章 母版页、主题和控件皮肤 81

3.1 母版页 81

3.1.1 创建母版页 82

3.1.2 创建内容页面 85

3.1.3 从内容页面中访问母版页 88

3.1.4 为应用程序定义默认的母版页 89

3.1.5 在代码中修改母版页 89

3.1.6 嵌套母版页 90

3.2 主题和控件皮肤 91

3.2.1 创建主题 92

3.2.2 往主题中添加CSS 92

3.2.3 为主题创建控件皮肤 92

3.2.4 禁用控件皮肤 93

3.2.5 为主题创建命名的控件皮肤 94

3.2.6 把主题应用到指定的页面或整个应用程序 94

3.2.7 对主题进行编程 95

3.3 小结 95

第4章 开发可复用的组件:皮肤化的页面消息控件 96

4.1 ASP.NET 2.0中的新控件特性 97

4.1.1 用户控件的设计时呈现 97

4.1.2 全局标签注册 98

4.2 使用ControlState开发服务器控件 99

4.2.1 建立ControlStateExample控件 100

4.2.2 创建ControlState演示页面 103

4.2.3 在演示页面中查看ControlState的行为 105

4.3 构建一个皮肤化的页面消息控件 105

4.3.1 什么是皮肤化的控件 106

4.3.2 服务器控件如何操纵UserControl 106

4.3.3 皮肤化控件如何实现 107

4.3.4 皮肤化页面消息服务器控件的架构 108

4.3.5 UserControl皮肤的存储位置 110

4.3.6 设立消息Web控件项目 110

4.3.7 皮肤化Web控件的类 111

4.3.8 MessageDataCollection类 114

4.3.9 为控件库定义一个标准的标签前缀 121

4.3.10 设计时呈现 121

4.3.11 在Web项目中引用Page-MessageControl 122

4.3.12 创建PageMessageControl皮肤文件 122

4.3.13 使用PageMessageControl 127

4.4 小结 128

第5章 用于表单验证的用户管理工具和登录控件 130

5.1 ASP.NET的表单验证 131

5.1.1 验证模式 131

5.1.2 为应用程序配置验证模式 133

5.1.3 验证票据的概念 133

5.1.4 验证cookie 134

5.1.5 指定默认登录页面和登录重定向URL 134

5.1.6 其他表单验证配置选项 135

5.1.7 手动实现表单验证 137

5.2 处理成员资格和角色对象 144

5.2.1 Memebership对象 144

5.2.2 角色对象 147

5.2.3 对成员资格和角色对象进行编程 149

5.2.4 配置Memebership和Role提供程序 149

5.3 用Web站点管理工具管理用户和安全性 153

5.3.1 打开Web站点管理工具 153

5.3.2 Home选项卡 153

5.3.3 Provider选项卡 154

5.3.4 Security选项卡 156

5.3.5 添加、编辑和删除用户 162

5.4 ASP.NET 2.0登录控件 164

5.4.1 模板化控件 165

5.4.2 创建模板 166

5.4.3 Login控件 168

5.4.4 LoginView控件 170

5.4.5 PasswordRecovery控件 173

5.4.6 LoginStatus控件 175

5.4.7 LoginName控件 176

5.4.8 CreateUserWizard控件 176

5.4.9 ChangePassword控件 178

5.5 小结 180

第6章 管理用户配置 181

6.1 用户配置基础 182

6.1.1 Profile对象 182

6.1.2 启用和禁用用户配置 183

6.1.3 在Web.config中定义用户配置属性 183

6.1.4 创建用户配置属性组 184

6.1.5 实现用户配置属性类 185

6.1.6 强类型属性 187

6.1.7 ProfileManager类 188

6.2 处理匿名用户配置 190

6.2.1 启用匿名用户配置标识 190

6.2.2 什么时候使用匿名标识 193

6.2.3 匿名标识的缺点 193

6.2.4 定义匿名用户配置属性 194

6.2.5 用IsAnonymous避免匿名写入异常 194

6.2.6 重要的默认属性值 195

6.2.7 创建用户配置迁移代码 196

6.3 创建简单的定向广告 197

6.3.1 定义用户配置属性以跟踪内容偏好 197

6.3.2 构建定向广告的示例页面 198

6.4 购物车自定义属性 200

6.4.1 创建购物车 200

6.4.2 在Web.config中定义Shopping-Cart属性 203

6.4.3 构建产品显示组件以向购物车添加产品 204

6.4.4 构建购物车演示页面 207

6.4.5 带购物车的用户配置迁移 211

6.5 小结 212

第7章 使用Web部件框架构建门户 213

7.1 Web部件框架的概念 214

7.1.1 Web部件的概念 215

7.1.2 Web部件连接 215

7.1.3 门户页面显示模式 216

7.1.4 用区域定义门户区块 217

7.1.5 用户和共享范围 218

7.1.6 关闭和删除Web部件 221

7.1.7 隐藏和关闭Web部件 221

7.2 Web部件的接口、类和控件 222

7.2.1 IWebPart接口 222

7.2.2 Part类 225

7.2.3 WebPart类 225

7.2.4 GenericWebPart包装类 228

7.2.5 WebPartManager控件 229

7.2.6 ProxyWebPartManager控件 234

7.2.7 Web部件区域 234

7.2.8 WebPartZone控件和静态Web部件 235

7.2.9 CatalogZone控件和相关的目录部件 238

7.2.10 EditorZone控件和相关的编辑器部件 242

7.2.11 ConnectionsZone控件 246

7.3 构建Web部件示例 250

7.3.1 定义Web部件属性 251

7.3.2 实现基于UserControl的Web部件 252

7.3.3 实现自定义Web部件 260

7.4 高级Web部件主题 264

7.4.1 为Web部件添加自定义动词 265

7.4.2 连接提供方和接收方 267

7.4.3 导出Web部件配置文件 275

7.5 小结 277

第8章 适用于业务应用程序的有效搜索工具和技术 278

8.1 创建SqlQuery工具 279

8.1.1 目标和架构概览 279

8.1.2 Globals.vb中的枚举 280

8.1.3 SqlField类 281

8.1.4 SqlFieldCollection类 283

8.1.5 分析对象模型搜索中的WHERE子句 284

8.1.6 ISqlCondition接口 287

8.1.7 SqlCondition类 289

8.1.8 SqlConditionGroup类 290

8.1.9 构建SqlQuery类 301

8.1.10 SqlQuery类 303

8.1.11 使用SqlQuery对象构建查询 312

8.1.12 用SqlQuery类执行查询 316

8.1.13 用SqlQuery类执行分页查询 317

8.2 常用的搜索函数 318

8.2.1 日期范围搜索 319

8.2.2 使用DateRangeSearch 321

8.2.3 关键字搜索 322

8.2.4 使用CreateKeywords函数 326

8.3 显示基本和高级的搜索 327

8.3.1 ISearchControl接口 327

8.3.2 创建基本的搜索表单(SimpleForm.ascx) 328

8.3.3 创建高级搜索表单(AdvancedForm.ascx) 329

8.3.4 实现主搜索页面(EmployeeSearch.aspx) 330

8.3.5 基于用户控件的搜索表单的优势 333

8.4 小结 333

第9章 构建可复用的报表框架 334

9.1 构建报表框架 335

9.1.1 抽象类基础 335

9.1.2 解决方案架构 337

9.1.3 数据库 339

9.1.4 ISearchControl接口 340

9.1.5 分页和IpaginationControl接口 340

9.1.6 ReportFramework抽象类 342

9.2 使用报表框架创建报表 361

9.2.1 使用ISearchControl接口构建搜索表单 362

9.2.2 创建分页导航组件 364

9.2.3 构建报表页面的布局 367

9.2.4 开发报表页面的后置代码 368

9.2.5 运行报表页面 372

9.3 小结 372

第10章 基于Web的向导:避免重复的数据输入 373

10.1 Wizard控件概述 373

10.1.1 Wizard控件的布局和组成 374

10.1.2 重要的向导属性和事件 375

10.1.3 把步骤添加到向导 377

10.1.4 控制向导的导航 379

10.1.5 使用模板 384

10.2 模糊音搜索 387

10.2.1 语音码和Soundex函数 388

10.2.2 Difference函数的语音接近匹配 388

10.3 创建添加雇员向导 389

10.3.1 业务对象和实用函数 389

10.3.2 添加雇员向导 396

10.3.3 整个试一下 402

10.4 小结 402

第11章 上传文件 403

11.1 数据库与文件系统的比较 403

11.1.1 事务支持 404

11.1.2 实施参照完整性以及避免破坏文件链接 404

11.1.3 安全考虑 405

11.1.4 性能 405

11.1.5 数据备份和复制 406

11.1.6 编程的复杂性 406

11.1.7 未来的考虑 406

11.2 上传文件 407

11.2.1 FileUpload控件 407

11.2.2 用FileUpload控件保存文件 409

11.3 上传多个文件 409

11.3.1 客户端的多个文件上传 410

11.3.2 在服务器端保存多个文件 412

11.4 在数据库中保存文件 414

11.4.1 创建一个数据库表来存储文件 414

11.4.2 从客户端传递文件到服务器 415

11.4.3 保存单个文件到数据库 415

11.4.4 保存多个文件到数据库 417

11.5 从数据库获取上传的文件 418

11.6 小结 420

第12章 安全和加密 421

12.1 基本安全概念 421

12.1.1 安全术语 422

12.1.2 验证与授权 423

12.1.3 最小权限访问 423

12.1.4 进程、线程和令牌 423

12.1.5 角色扮演 425

12.1.6 委托 425

12.1.7 访问令牌和角色扮演的例子 425

12.2 ASP.NET安全架构概览 427

12.2.1 通过浏览器发送最初的请求 429

12.2.2 基于IP地址或者域的IIS授权 429

12.2.3 IIS验证 429

12.2.4 ASP.NET ISAPI扩展和ASP.NET工作进程 430

12.2.5 应用程序对象和请求的安全上下文 432

12.2.6 ASP.NET的验证模块 432

12.2.7 URL授权模块 433

12.2.8 文件授权模块 433

12.2.9 处理真正的请求 434

12.3 安全配置 435

12.3.1 IIS的安全配置 435

12.3.2 用NTFS权限加强文件安全性 442

12.3.3 ASP.NET的安全配置设置 445

12.4 加密敏感信息 453

12.4.1 加密配置设置 453

12.4.2 用单向加密散列数据 457

12.4.3 用双向加密实现数据的加密和解密 461

12.4.4 使用加密库 468

12.5 小结 469

第13章 使用HTTP处理器:请求处理、图片生成以及内容管理 470

13.1 HTTP处理器概览 471

13.1.1 IIS和ASP.NET HTTP流水线处理模型 471

13.1.2 HTTP处理器的常规用法 475

13.1.3 实现IHttpHandler接口 476

13.1.4 在IIS中映射文件扩展名 477

13.1.5 在ASP.NET中配置HTTP处理器 478

13.2 使用URL改写处理虚拟文什 480

13.2.1 创建报表页面 481

13.2.2 构建XlsReportHandler 483

13.2.3 HTTP处理器设计考虑 488

13.2.4 使用XlsReportHandler获取报表 490

13.3 用HTTP处理器生成缩略图 492

13.3.1 目标和解决方案架构 492

13.3.2 构建ThumbnailHandler 494

13.3.3 配置ThumbnailHandler 500

13.3.4 浏览Thumbnails 501

13.4 内容管理的后台 502

13.4.1 目标和解决方案架构 502

13.4.2 内容数据库设计 505

13.4.3 创建ContentManagement-Handler 506

13.4.4 配置ContentManagement-Handler 507

13.4.5 使用母版页创建内容模板 507

13.4.6 构建FrontController.aspx页面 509

13.4.7 构建FrontController.aspx.vb后置代码 509

13.4.8 Web用户控件和NoAction-Form 516

13.4.9 内容管理后台的下一步 517

13.5 小结 517