微软企业库4.1学习笔记(二十六)Unity依赖注入模块3
2010-05-02 23:04
716 查看
配置运行时支持数组
class Foot{
public Foot(IBar[] bars)
{ }
}
container.Configure<InjectedMembers>()
.ConfigureInjectionFor<Foot>(
new InjectionConstructor(new ResolvedArrayParameter<IBar>());
代码
IUnityContainer myContainer = new UnityContainer();
myContainer.Configure<InjectedMembers>()
.ConfigureInjectionFor<MyObject>(
new InjectionConstructor(12, "Hello Unity!"),
new InjectionProperty("MyProperty"),
new InjectionProperty("MyStringProperty", "SomeText"),
new InjectionMethod("InitializeMe", 42.0,
new ResolvedParameter(typeof(ILogger), "SpecialLogger")
)
);
这种API动态配置注入提供了足够的灵活性,保留了简易、直观的使用方式。
这种配置注入的API是以InjectionParameterValue的子类为基础。当然在建立注入的时候也可以提供其他类型的对象。根据下面的规则,提供的对象将会被翻译成InjectionParameterValue类型。
1)如果对象是InjectionParameterValue的子类实例的话,注入系统将会使用这个对象。
2)如果对象是Type的实例,注入系统会创建一个ResolvedParameter作为注入之后返回的类型。
3)如果是其他对象,配置API会创建一个InjectionParameterValue实例,容器会产生一个属性注入。
未完待续。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
class Foot{
public Foot(IBar[] bars)
{ }
}
container.Configure<InjectedMembers>()
.ConfigureInjectionFor<Foot>(
new InjectionConstructor(new ResolvedArrayParameter<IBar>());
代码
IUnityContainer myContainer = new UnityContainer();
myContainer.Configure<InjectedMembers>()
.ConfigureInjectionFor<MyObject>(
new InjectionConstructor(12, "Hello Unity!"),
new InjectionProperty("MyProperty"),
new InjectionProperty("MyStringProperty", "SomeText"),
new InjectionMethod("InitializeMe", 42.0,
new ResolvedParameter(typeof(ILogger), "SpecialLogger")
)
);
这种API动态配置注入提供了足够的灵活性,保留了简易、直观的使用方式。
这种配置注入的API是以InjectionParameterValue的子类为基础。当然在建立注入的时候也可以提供其他类型的对象。根据下面的规则,提供的对象将会被翻译成InjectionParameterValue类型。
1)如果对象是InjectionParameterValue的子类实例的话,注入系统将会使用这个对象。
2)如果对象是Type的实例,注入系统会创建一个ResolvedParameter作为注入之后返回的类型。
3)如果是其他对象,配置API会创建一个InjectionParameterValue实例,容器会产生一个属性注入。
未完待续。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
相关文章推荐
- 微软企业库4.1学习笔记(二十六)Unity依赖注入模块3
- 微软企业库4.1学习笔记(二十六)Unity依赖注入模块3
- 微软企业库4.1学习笔记(二十五)Unity依赖注入模块2
- 微软企业库4.1学习笔记(二十五)Unity依赖注入模块2
- 微软企业库4.1学习笔记(二十五)Unity依赖注入模块2
- 微软企业库4.1学习笔记(四十一)依赖注入模块Unity 简介
- 微软企业库4.1学习笔记(二十四)Unity依赖注入模块 简介
- 微软企业库4.1学习笔记(四十一)依赖注入模块Unity 简介
- 微软企业库4.1学习笔记(二十四)Unity依赖注入模块 简介
- 微软企业库4.1学习笔记(四十一)依赖注入模块Unity 简介
- 微软企业库4.1学习笔记(二十四)Unity依赖注入模块 简介
- 微软企业库5.0学习笔记(10)ASP.NET模块依赖注入
- 微软企业库4.1学习笔记(五)对象创建和依赖注入方法
- 微软企业库4.1学习笔记(五)对象创建和依赖注入方法
- 微软企业库4.1学习笔记(五)对象创建和依赖注入方法
- 微软企业库4.1学习笔记(五)对象创建和依赖注入方法
- 微软企业库5.0学习笔记(10)ASP.NET模块依赖注入
- 微软企业库4.1学习笔记(十九)缓存模块7 扩展和修改缓存模块
- 微软企业库4.1学习笔记(二十一)加解密模块1 简介
- 微软企业库4.1学习笔记(十九)缓存模块7 扩展和修改缓存模块