我正在 ASP.NET 中构建适用于 Windows、OSX、iOS、Windows Mobile、Android 和 Web 的跨平台应用程序。对于每个客户端,我都使用 C#(我使用的是 Xamarin)。一切都在单一 VS 解决方案中。我的核心代码(域)位于类库(便携式),因此可以在每个 UI(客户端)中使用。
我想在该项目中使用 IoC 容器,这是我的问题:
我不知道我选择的 IoC 是否适用于每个客户端。我知道例如Ninject不适用于可移植类库 - 有Ninject.便携式对于这样的项目。这让我思考,我选择的 IoC 可能无法在我的一个客户端中工作,这会很糟糕。
所以,我的问题是:哪些 IoC 容器可用于可移植类库以及 Visual Studio 2015 中制作的每个客户端 (UI)?
我感兴趣的是简易注射器,但现在我有这些疑问。
我在 IoC 容器上编写了一个小型抽象层,并为与 Xamarin 配合使用的容器编写了插件。它们可在 NuGet 上获取: