IOC神器Autofac
2012-05-25 10:09 午夜瞎想 阅读(3893) 评论(0) 编辑 收藏 举报Nop的IOC注册整体顺序
在global的Application_Start()初始化引擎EngineContext.Initialize(false);根据配置文件启动引擎NopEngine,在NopEngine时候启动ContainerConfigurer配置容器进行IOC注册
在ContainerConfigurer中首先注册引擎和ITypeFinder。这个ITypeFinder可以全dll搜索实现某一个接口的所有类
第二部分就是找到所有实现了IDependencyRegistrar接口的类然后实现注册
这样也方便插件的动态加载
Nop.Core.Infrastructure.DependencyManagement.ContainerConfigurer
大部分注册都在Nop.Web.Framework.DependencyRegistrar : IDependencyRegistrar类内
其中Setting的注册很有意思。
有大量接口为ISetting的类,利用Autofac进行批量注册
虽然代码没有完全理解但是觉得这个功能很神奇