首页新闻找找看学习计划

一个依赖注入的循环引用的问题

0
悬赏园豆:30 [已解决问题] 解决于 2013-08-09 18:22

我用unity做为依赖注入容器,项目情况是这样的。

项目XXX.IoC是一个初始化unity的类库,因为需要注册项目XXX.Service,所以引用了这个项目。

但是项目XXX.Service又需要调用XXX.IoC里的Unity.Resolve()方法来获得一些已经注册的类,所以就有循环应用的,想不清楚要怎么搞了,求教一下大家的做法?

wdwwtzy的主页 wdwwtzy | 菜鸟二级 | 园豆:226
提问于:2013-08-08 22:07
< >
分享
最佳答案
0

新建一个项目XXX.BootStrapper,分别引用XXX.IoC和XXX.Service,在XXX.BootStrapper中注册XXX.Service

收获园豆:30
dudu | 高人七级 |园豆:39229 | 2013-08-08 22:14

我靠,dudu老大好思路啊。。。我怎么想不到。。。

wdwwtzy | 园豆:226 (菜鸟二级) | 2013-08-08 22:21

@wdwwtzy: 既然问题解决了,赶紧关闭问题吧

小兵仔 | 园豆:1240 (小虾三级) | 2013-08-09 08:35

嗯,解决了,仔细说下方法吧。就是按照dudu老大思路来的。新建项目BootStrapper,不过发现一个好的开源组件http://bootstrapper.codeplex.com/,就是用来初始化一些东西,包括但不限于ioc,automap。最终我用这个组件来初始化Unity注册,但是Unity类的初始化仍然放在XXX.IoC项目中,这样其他XXX.Service引用XXX.IoC就可以调用Unity.Resolve()方法了。

wdwwtzy | 园豆:226 (菜鸟二级) | 2013-08-09 18:26
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册