首页新闻找找看学习计划

IOC组件的使用问题请教.

0
悬赏园豆:50 [已解决问题] 解决于 2014-09-30 14:59

ninject注入正常在一个接口有一个实现类的情况下我知道怎么用.

但是:

1.当一个接口有多个实现类的时候,怎么注入多个实现类,并有选择性的调用?

2.当一个实现类实现了多个接口的时候,怎么注入,并调用?

 

补充:我是在asp.net mvc3里使用ninject的.

``炯``的主页 ``炯`` | 初学一级 | 园豆:4
提问于:2014-09-30 10:41
< >
分享
最佳答案
0

ninject没用过,不好评价,给你建议如下:

1、对于一个接口多个实现的注入,可以通过name或key的方式进行区别,使用的时候也通过name或key来选择。在autofac里是这样的,我想ninject也类似。

2、对于一个类实现多个接口的时候怎么注入,可以通过代理实现:

Register<Class>();

Register<Interface1>(x=>x.Resolve<Class>());

Register<Interface2>(x=>x.Resolve<Class>());

收获园豆:50
519740105 | 大侠五级 |园豆:5810 | 2014-09-30 11:34

有没autofac的示例代码呢?

``炯`` | 园豆:4 (初学一级) | 2014-09-30 14:39

@棋怜: 就上面的差不多了,具体的,你看下autofac名称空间下的扩展方法。在重新安装系统,没打开。

不过,你可以去参考smartstore(或者nopcommerce也可以,其实他们是一样的)。

519740105 | 园豆:5810 (大侠五级) | 2014-09-30 14:56

@519740105: 谢谢了,是你解释的这样.

我也找到了一个示例了.

http://www.cnblogs.com/WeiGe/p/3871451.html

``炯`` | 园豆:4 (初学一级) | 2014-09-30 14:59
其他回答(1)
0

通过配置文件,或者Bind<I>().To<。。。>();绑定时候绑定不同的类

draculav | 园豆:734 (小虾三级) | 2014-09-30 10:56

绑定后,调用时怎么区分?

支持(0) 反对(0) ``炯`` | 园豆:4 (初学一级) | 2014-09-30 11:46
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册