C# 使用带Ninject的棱镜
有没有人用with Ninject而不是Unity?我需要一些Unity还不支持的功能,我决定将IoC容器切换到Ninject。不过,我还是有点为替换而挣扎 我需要使用Prism中的EventAggregator和RegionManager。我已经看到它实际上是用来替换的,但是这是为旧版本的Prism编写的,而且有几个类似乎已经改变了等等。因此,我在尝试重写它的过程中做了一些努力之后,最后感到非常困惑 所以-我的问题基本上是:我如何用Ninject替换Unity 必要的步骤是什么?起初,我假设我可以编写一个简单的引导程序来创建和配置Ninject容器,并使用它来解析所有其他对象。我将IEventAggregator绑定到EventAggregator,将IRegionManager绑定到RegionManager,但在创建Shell时失败,并调用RegionManager.CreateRegion。问题是,似乎我需要在某个地方设置ServiceLocator,因为它在这一行失败:C# 使用带Ninject的棱镜,c#,.net,prism,ioc-container,ninject,C#,.net,Prism,Ioc Container,Ninject,有没有人用with Ninject而不是Unity?我需要一些Unity还不支持的功能,我决定将IoC容器切换到Ninject。不过,我还是有点为替换而挣扎 我需要使用Prism中的EventAggregator和RegionManager。我已经看到它实际上是用来替换的,但是这是为旧版本的Prism编写的,而且有几个类似乎已经改变了等等。因此,我在尝试重写它的过程中做了一些努力之后,最后感到非常困惑 所以-我的问题基本上是:我如何用Ninject替换Unity 必要的步骤是什么?起初,我假设我
IServiceLocator locator = ServiceLocator.Current;
沿途有什么想法和建议吗 迈克尔·哈特为《棱镜中的Ninject》
您只需实现您自己的“Ninject boostrapper”和使用Ninject的IServiceLocator实现。链接中的代码为您完成了所有这些工作。我刚刚创建了一个github项目,该项目使用Ninject 2.0和Prism 4.0,应该可以满足任何想用unity或MEF交换Ninject的人的需要
网站在这里:出于好奇,你需要什么Unity没有的功能?@Anderson链接断了:(@dFlat:更好的是,这里是源代码:前面提到的所有链接都没有了。