摘要: 通过AttributeedModelPrograming,我们可以声明暴露组件,依赖组件,发现组件,但是所有这些需要有一个触发点。即需要把所有这些组合在一起来协同工作,最终实现依赖注入。这就是Container层所做的事情. CompositionContainer CompositionConta 阅读全文
posted @ 2017-10-29 14:16 self.refactoring 阅读(403) 评论(0) 推荐(0) 编辑
摘要: Primitive层是属于依赖注入的通用模型,主要有如下核心类型: 1. ComposablePart是核心类,他表示组件容器中的每一个组件,是对真正组件实例的包装。ExportDefinition属性定义了该组件对外提供的功能描述。ImportDefinition属性定义了该组件对别的组件的依赖。 阅读全文
posted @ 2017-10-29 14:15 self.refactoring 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 上一片介绍了Primitive层,Attribute Model可以认为是对Primitive的上层实现。主要包括如下内容: 1. 一系列的Attribute来定义Import和Export 常用的有如下Attribute:Export,InheritedExport,Import,ImportCo 阅读全文
posted @ 2017-10-29 14:15 self.refactoring 阅读(302) 评论(0) 推荐(0) 编辑
摘要: 用了很久的MEF框架来做依赖注入,最近想把它的原理和机构总结一下,主要包括如下几个方面: 1. 总体架构 2. .Net Composition Primitive 3. Attribute Model Programing/Life cycle 4. Container/Recomposition 阅读全文
posted @ 2017-10-29 14:14 self.refactoring 阅读(728) 评论(0) 推荐(0) 编辑