我使用和喜欢Ninject很多。
我想知道为什么Ninject.Portable中没有"BasicKernel"
?
实施IKernel是否需要PCL不包含的任何电话?
我在谈论简单的情景(约:Bind<If1>().To<Class1>()
和Get<If1>()
)?
答案 0 :(得分:7)
Ninject的PCL版本分为两个库,Ninject.dll和Ninject.Common.dll,因为某些代码是特定于平台的。没有平台代码,Ninject就不可能存在。
为了使用Ninject,您需要将Portable.Ninject Nuget添加到您的可移植库和到您的主app / exe。将包添加到主app / exe中会带来两个必需的文件。
顺便说一句,我正在重新编写程序包以使用PCL“Bait and Switch”技术,因此只有一个Ninject.dll文件。这将使您能够在PCL中引用其中任何一个,但仍然需要app / exe引用NuGet以获得“真实”实现而不是外观。