《EnterLib PIAB深入剖析》系列博文汇总
Policy Injection Application Block(PIAB)是Enterprise Library众多Application Block中的一个。在我看来,PIAB和后来的Unity Application Block的推出在Enterprise Library的发展历程中具有重要的意思,它标志着Enterprise Library向真正框架上面发展。不再是仅仅关注于某个具体功能实现(比如Logging、Caching、DA、Security等等)。PIAB提供了一种易用的、可扩展的机制是你能够将你需要的Policy应用到对应的目标对象上。PIAB是为你实现AOP提供了又一个不错的选择。对了让读者全面地了解PIAB,能够灵活的使用PIAB为你项目开发服务,我先后写了6篇文章。现在讲他们集中在一起,以饷读者。
[第1篇] Policy Injection Application Block 简介
本篇文章介绍了PIAB相关的概念、使用场景,并通过一个简单的例子介绍PIAB的编程方式。
[第2篇] Policy Injection Application Block 设计和实现原理
本篇文章介绍了整个PIAB的架构,并通过具体的例子揭示了PIAB的实现机制。
[第3篇] 如何创建你自己的CallHandler
Policy Injection Application Block 是一个具有很好扩展性的实现AOP的框架,提供一种简易的方式是你能够实现core concern和crosscutting concern的分离。在实际的开发中,你可以将你所需要的逻辑(一般是非业务逻辑)定义在一个个的CallHandler中。本篇文章通过一个简单的例子,以walk through的方式指导读者如何一步步地创建和使用PIAB CallHandler。
[第4篇] 如何让CallHandler有序执行
由于本篇文章是基于Enterprise Library Library V3.1 的,在该版本中,我们无法控制应用到同一个目标方法上的多个CallHandler的执行顺序。在本篇文章中,我将介绍如何对PIAB的Source进行简单的修改,让CallHandler按照我们希望的顺序执行。虽然在最新版本的Enterprise Library Library(V4.0)中实现了该功能,阅读本篇文章对于了PIAB的实现机制仍然具有一定的意义。
[第5篇] 如何实现WCF和PIAB的集成
WCF是.NET平台下到目前为止最强大的分布式开发平台。同时WCF也最具有可扩展性的分布式框架。本篇文章将介绍如何通过WCF extension使用通PIAB的集成。通过WCF和PIAB的集成,我们可以将CallHandler直接应用到WCF service上,在运行时,PIAB将被自动纳入WCF处理管道。
[第6篇] 如何实现Unity Container和PIAB的集成
Unity Application Block是Enterprise Library 4.0推出的又一个在Enterprise Library发展历史上具有里程碑意义的Application Block。Unity Application Block将Dependency Injection的机制引入Enterprise Library。通过几乎所有的原有的Application Block也因为Unity进行了修正。本篇文章将介绍如何通过Unity container extension实现Unity 和PIAB的集成。
- Dubbo(四) Dubbo-Admin项目 Dubbo管理台
- volley请求原理
- Dubbo(三) 安装Zookeeper 单机-集群
- ASP.NET MVC Preview生命周期分析
- Dubbo(二) 认识Zookeeper
- Kafka源码系列之使用要点总结及重要错误解决
- Kafka源码系列之实现自己的kafka监控
- Kafka源码系列之副本同步机制及isr列表更新
- Kafka源码系列之topic创建分区分配及leader选举
- Kafka源码系列之如何删除topic
- Kafka源码系列之kafka如何实现高性能读写的
- Kafka源码系列之分组消费的再平衡策略
- Kafka源码系列之Consumer高级API性能分析
- Kafka源码系列之源码解析SimpleConsumer的消费过程
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法