ASP.NET MVC 5框架揭秘

ASP.NET MVC 5框架揭秘

蒋金楠, 著

出版社:电子工业出版社

年代:2014

定价:89.0

书籍简介:

本书以一个模拟ASP.NET MVC内部运行机制的“迷你版MVC框架”作为开篇,其目的在于将ASP.NET MVC真实架构的“全景”勾勒出来。相信精读本书的读者一定能够将ASP.NET MVC从接收请求到响应回复的整个流程了然于胸,对包括路由、Controller的激活、Model元数据的解析、Action方法的选择与执行、参数的绑定与验证、过滤器的执行以及View的呈现等相关的机制具有深刻的理解。

作者介绍:

蒋金楠,网名Artech,高级软件顾问。微软6任MVP(Solutions Architecture、ConnectedSystem与Microsoft Integration)。著《WCF全面解析》(上、下册)《ASP.NET MVC4框架揭秘》《ASP.NET Web API 2技术揭秘》等.NET领域畅销名著。对.NET Framework、C#、ASP.NET、SQLServer、设计模式、软件架构,以及主流的开源框架有着深入的研究。尤其是在WCF技术方面,属国内较早接触WCF的人之一,同时对.NETRemoting、MSMQ通信技术有深入的理解。博客园推荐博客(目前),2012年度51CTOIT博客大赛10佳。

书籍目录:

第1章 ASP.NET + MVC

1.1 传统MVC模式

1.1.1 自治视图

1.1.2 什么是MVC模式

1.2 MVC的变体

1.2.1 MVP

1.2.2 Model 2

1.2.3 ASP.NET MVC与Model 2

1.3 IIS/ASP.NET管道

1.3.1 IIS 5.x与ASP.NET

1.3.2 IIS 6.0与ASP.NET

1.3.3 IIS 7.0与ASP.NET

1.3.4 ASP.NET集成

1.3.5 ASP.NET管道

1.4 ASP.NET MVC是如何运行的

1.4.1 建立在"迷你版"ASP.NET MVC上的Web应用

1.4.2 路由

1.4.3 Controller的激活

1.4.4 Action的执行

1.4.5 完整的流程

第2章 路由

2.1 ASP.NET路由

2.1.1 请求URL与物理文件的分离

2.1.2 实例演示:通过路由实现请求地址与.aspx页面的映射(S201)

2.1.3 Route与RouteTable

2.1.4 路由注册

2.1.5 根据路由规则生成URL

2.2 ASP.NET MVC路由

2.2.1 路由映射

2.2.2 路由注册(S210)

2.2.3 缺省URL参数

2.2.4 基于Area的路由映射

2.2.5 链接和URL的生成

2.3 动态HttpHandler映射

2.3.1 UrlRoutingModule

2.3.2 PageRouteHandler与MvcRouteHandler

2.3.3 ASP.NET路由系统扩展

2.3.4 实例演示:通过自定义Route对ASP.NET路由系统进行扩展

(S214)

第3章 Controller的激活

3.1 Controller激活系统全景展示

3.1.1 Controller

3.1.2 ControllerFactory

3.1.3 ControllerBuilder

3.1.4 Controller的激活与路由

3.2 Controller默认激活机制

3.2.1 Controller类型的解析

3.2.2 Controller类型的缓存

3.2.3 Controller的释放和会话状态行为的控制

3.3 IoC的应用

3.3.1 从Unity来认识IoC

3.3.2 Controller与Model的解耦

3.3.3 基于IoC的ControllerFactory

3.3.4 基于IoC的ControllerActivator

3.3.5 基于IoC的DependencyResolver

第4章 Model元数据的解析

4.1 Model元数据

4.1.1 Model元数据层次化结构

4.1.2 Model元数据的定制

4.1.3 IMetadataAware接口

4.2 模板化数据的呈现

4.2.1 实例演示:通过模板将布尔值显示为RadioButton(S409)

4.2.2 预定义模板

4.2.3 针对数据类型的模板

4.2.4 数据类型名称 V.S. 模板名称

4.2.5 模板的获取与执行

4.2.6 实例演示:通过定制Model元数据和自定义模板 实现预定义列表的

呈现(S412)

4.3 Model元数据的提供机制

4.3.1 再谈ModelMetadata

4.3.2 ModelMetadataProvider

4.3.3 Model元数据提供系统的扩展

第5章 3个描述对象

5.1 ControllerDescriptor

5.1.1 ReflectedControllerDescriptor

5.1.2 ReflectedAsyncControllerDescriptor

5.2 ActionDescriptor

5.2.1 AsyncActionDescriptor

5.2.2 ReflectedActionDescriptor

5.2.3 ReflectedAsyncActionDescriptor

5.2.4 TaskAsyncActionDescriptor

5.3 ParameterDescriptor

第6章 Model的绑定(上篇)

6.1 源数据的提供

6.1.1 NameValueCollectionValueProvider

6.1.2 DictionaryValueProvider

6.1.3 ValueProviderFactory

6.1.4 ValueProviderFactories

6.2 ModelBinder及其提供策略

6.2.1 ModelBinder

6.2.2 ModelBinderProvider

6.2.3 ModelBinders

6.2.4 CustomModelBinderAttribute

6.2.5 针对参数的ModelBinder是如何创建的

6.3 Model绑定的实施

6.3.1 绑定上下文的初始化

6.3.2 绑定过程中对ModelState的设置

第7章 Model的绑定(下篇)

7.1 绑定简单对象

7.1.1 利用ValueProvider绑定简单对象

7.1.2 实例演示:利用MyDefaultModelBinder绑定简单类型参数(S701)

7.2 绑定复杂对象

7.2.1 复杂对象层次化结构

7.2.2 递归式绑定

7.2.3 实例演示:利用MyDefaultModelBinder绑定复杂类型参数

(S702、S703)

7.3 绑定集合

7.3.1 针对同名数据项的集合绑定

7.3.2 针对索引的集合绑定

7.4 绑定字典

7.4.1 字典是一个复杂类型的集合

7.4.2 针对字典类型的Model绑定策略

7.4.3 实例演示:利用MyDefaultModelBinder绑定字典类型参数(S707)

第8章 Model的验证(上篇)

8.1 几种参数验证方式

8.1.1 ModelError

8.1.2 验证消息的呈现

8.1.3 手工验证绑定的参数

8.1.4 使用ValidationAttribute特性

8.1.5 让数据类型实现IValidatableObject接口

8.1.6 让数据类型实现IDataErrorInfo接口

8.2 ModelValidator及其提供策略

8.2.1 ModelValidator与ModelValidatorProvider

8.2.2 DataAnnotationsModelValidator

8.2.3 ValidatableObjectAdapter

8.2.4 DataErrorInfoModelValidator

8.2.5 ClientModelValidator

8.2.6 CompositeModelValidator

8.3 Model验证的实施

8.3.1 Model绑定过程中的验证

8.3.2 实例演示:模拟Model绑定中的验证(S810)

8.3.3 针对"必需"数据成员的验证

第9章 Model的验证(下篇)

9.1 ValidationAttribute特性

9.1.1 数据是如何被验证的

9.1.2 几个常用的ValidationAttribute

9.1.3 应用ValidationAttribute特性的唯一性

9.2 DataAnnotationsModelValidator及其提供策略

9.2.1 "适配"型DataAnnotationsModelValidator

9.2.2 DataAnnotationsModelValidatorProvider

9.2.3 将ValidationAttribute特性应用到参数上

9.2.4 一种Model类型,多种验证规则

9.3 客户端验证

9.3.1 jQuery验证

9.3.2 基于jQuery的Model验证

9.3.3 自定义验证

第10章 Action方法的执行

10.1 异步Action的定义

10.1.1 基于线程池的请求处理机制

10.1.2 两种异步Action方法的定义

10.1.3 AsyncManager

10.2 各种同步与异步组件

10.2.1 MvcHandler

10.2.2 Controller

10.2.3 ActionInvoker

10.2.4 ControllerDescriptor

10.2.5 ActionDescriptor

10.3 目标方法的执行

10.3.1 Action方法并不以"反射"方式执行

10.3.2 实例演示:采用针对表达式树执行Action方法(S1010)

第11章 View的呈现

11.1 ActionResult

11.1.1 EmptyResult

11.1.2 ContentResult

11.1.3 FileResult

11.1.4 JavaScriptResult

11.1.5 JsonResult

11.1.6 HttpStatusCodeResult

11.1.7 RedirectResult/RedirectToRouteResult

11.2 ViewResult与ViewEngine

11.2.1 View引擎中的View

11.2.2 ViewEngine

11.2.3 ViewResult的执行

11.3 Razor引擎

11.3.1 View的编译原理

11.3.2 WebViewPage与WebViewPage<TModel>

11.3.3 RazorView

11.3.4 RazorViewEngine

第12章 过滤器

12.1 Filter及其提供机制

12.1.1 Filter与FilterProvider

12.1.2 以特性方式注册过滤器

12.1.3 Controller本身就是过滤器

12.1.4 过滤器的全局注册

12.1.5 实例演示:验证Filter的提供机制和执行顺序

(S1201,S1202,S1203)

12.2 AuthenticationFilter

12.2.1 AuthenticationFilter的执行流程

12.2.2 实例演示:通过自定义AuthenticationFilter实现Basic认证(S1204)

12.3 AuthorizationFilter

12.3.1 AuthorizeAttribute

12.3.2 RequireHttpsAttribute

12.3.3 ValidateInputAttribute

12.3.4 ValidateAntiForgeryTokenAttribute

12.3.5 ChildActionOnlyAttribute

12.4 ActionFilter

12.4.1 ActionFilter的执行流程

12.4.2 ActionFilter对ActionResult的设置

12.4.3 异常处理

12.5 ExceptionFilter

12.5.1 HandleErrorAttribute

12.5.2 实例演示:利用自定义的ExceptionFilter集成Enterprise Library进行

异常处理(S1207, S1208, S1209)

12.6 ResultFilter与OverrideFilter

12.6.1 ResultFilter的执行流程

12.6.2 屏蔽外围过滤器

第13章 特性路由

13.1 特性路由注册

13.1.1 RouteInfoProvider特性

13.1.2 基本路由映射

13.1.3 让路由模板能够尽可能反映资源的层次结构

13.1.4 为路由变量设置约束

13.1.5 缺省路由变量

13.1.6 设置模板前缀

13.1.7 设置Area名称

13.2 约束表达式的解析

13.2.1 RangeRouteConstraint

13.2.2 InlineConstraintResolver

13.2.3 自定义约束

13.3 Route的创建

13.3.1 特性路由注册的Route对象

13.3.2 Route的生成机制

13.3.3 Controller的激活与Action方法的选择

第14章 案例实践

14.1 功能简介

14.1.1 商品列表的呈现

14.1.2 订购商品

14.1.3 登录与错误页面

14.2 设计概述

14.2.1 Controller-Service-Repository

14.2.2 IoC的应用

14.2.3 AOP的应用

14.2.4 异常处理

14.3 编程实现

14.3.1 数据表的创建

14.3.2 Repository

14.3.3 Service

14.3.4 路由注册和布局

14.3.5 ProductController

14.3.6 OrderController

14.3.7 AccountController

附录A 实例列表

内容摘要:

《ASP.NET MVC 5 框架揭秘》以一个模拟ASP.NET MVC内部运行机制的“迷你版MVC框架”作为开篇,其目的在于将ASP.NET MVC真实架构的“全景”勾勒出来。接下来本书以请求消息在ASP.NET MVC框架内部的流向为主线将相关的知识点串连起来,力求将”黑盒式”的消息处理管道清晰透明地展示在读者面前。相信精读本书的读者一定能够将ASP.NET MVC从接收请求到响应回复的整个流程了然于胸,对包括路由、Controller的激活、Model元数据的解析、Action方法的选择与执行、参数的绑定与验证、过滤器的执行以及View的呈现等相关的机制具有深刻的理解。
  本书以实例演示的方式介绍了很多与ASP.NET MVC相关的很好实践,同时还提供了一系列实用性的扩展,相信它们一定能够解决你在真实开发过程中遇到的很多问题。本书末章提供的案例不仅仅用于演示实践中的ASP.NET MVC,很多的架构设计方面的东西也包含其中。除此之外,本书在很多章节还从设计的角度对ASP.NET MVC的架构进行了深入分析,所以从某种意义上讲本书可以当成一本架构设计的书来读。

编辑推荐:

如果你觉得自己对ASP.NET MVC 所知甚少,可利用本书来系统学习;如果你觉得自己足够精通,也一定能通过阅读本书发现知识“盲点”。
  √ 以消息流向为主线,对新的ASP.NET MVC框架从接收请求到响应回复的整个流程进行了细致而深入的讲解。
  √ 覆盖路由、Controller的激活、Model元数据的解析、Action方法的选择与执行、参数的绑定与验证、过滤器的执行以及View的呈现。
  √ 以实例演示的方式介绍了一系列很好实践和实用性扩展。
  √ 从设计的角度对ASP.NET MVC的架构进行了深入分析,可当作一本架构设计的书来读。
  √ 近距离触及ASP.NET MVC框架内核,却未涉及太多高深知识点,阅读门槛并不高。
  
海报:

书籍规格:

书籍详细信息
书名ASP.NET MVC 5框架揭秘站内查询相似图书
9787121237812
如需购买下载《ASP.NET MVC 5框架揭秘》pdf扫描版电子书或查询更多相关信息,请直接复制isbn,搜索即可全网搜索该ISBN
出版地北京出版单位电子工业出版社
版次1版印次1
定价(元)89.0语种简体中文
尺寸26 × 19装帧平装
页数印数

书籍信息归属:

ASP.NET MVC 5框架揭秘是电子工业出版社于2014.8出版的中图分类号为 TP393.092 的主题关于 网页制作工具-程序设计 的书籍。