NInject中是否有設施可以讓我按需要從其他模塊(組件)加載服務,就像它在Unity中完成的一樣?是否可以根據需要加載模塊/組件?
回答
如果您指的是開箱非靜態加載Assemblies,那麼它不適用。
上有這麼多的其他問題,例如,Using Ninject in a plugin like architecture
我敢肯定這是你在找什麼:
var kernel = new StandardKernel();
kernel.Load(Assembly.Load("yourpath_to_assembly.dll");
如果你看看KernelBase與Ninject反射器。 dll的你會看到,這個調用將遞歸加載在加載的程序集的所有模塊(Load方法需要一個IEnumerable)
public void Load(IEnumerable<Assembly> assemblies)
{
foreach (Assembly assembly in assemblies)
{
this.Load(assembly.GetNinjectModules());
}
}
我不太下支持「Like Unity」的意思,但您可以爲加載程序集做一些不同的事情。 Ninject本身默認會爲擴展/插件加載本地程序集。 Ninject也可以從程序集中加載NinjectModule類。如果你想做更復雜的事情,你可以使用Ninject.Extensions.Conventions項目做很多不同的掃描和類型綁定。
您能否提供關於如何使Ninject「從程序集加載NinjectModule類」的更多細節? Ninject的wiki涵蓋了非常基本的東西。 – 2010-07-13 10:35:19
好吧,我現在知道了,我在我的項目中混合了Ninject版本。 – 2010-07-13 12:50:17
提供的GitHub鏈接已損壞。實際鏈接是https://github.com/ninject/Ninject.Extensions.Conventions。 – realsonic 2018-01-18 17:28:52
- 1. StructureMap可以根據需要加載模塊/程序集嗎?
- 2. 如何根據需要加載模塊?
- 3. 根據需求加載模塊
- 4. 根據條件語句,可以加載列表perl模塊嗎?
- 5. 如何根據條件加載模塊?
- 6. Vuejs組件模板是否只需要一個根元素?
- 7. 流星和Reactjs組件根據需要加載
- 8. 我是否需要使用COM(組件對象模塊)
- 9. 如何根據需要加載數據? React/Redux。否SSR
- 10. 無法加載ES6模塊需要
- 11. 需要js不加載模塊
- 12. 是否可以在外部模塊中加載Devise?
- 13. 是否可以動態加載Android驅動程序模塊?
- 14. 是否可以將參數傳遞給Perl模塊加載?
- 15. 是否可以實現模塊加載作爲承諾?
- 16. 在我可以安裝npm模塊之前是否需要有package.json文件?
- 17. 是否可以根據停車事件
- 18. 根據需要加載Ajax選項卡
- 19. 根據需要加載角度腳本
- 20. 根據需要在DataGridView中加載行
- 21. 是否可以根據主題加載JavaScript?
- 22. 是否需要lib中的類/模塊?
- 23. 節點模塊是否需要對方
- 24. 是否可以使用dryscape Python模塊下載圖像文件?
- 25. 當需要移除模塊以節省內存時,是否可以使用requirejs
- 26. 是否可以將模塊導入聚合物組件?
- 27. 是否可以從一個大的Ruby模塊加載/只需要一個函數?
- 28. databind之後的目標accordion窗格內容模板,以便我可以根據需要加載數據?
- 29. 需要模塊給出模塊未加載錯誤
- 30. 是否有可能像在模塊中一樣使用Angular 2加載組件?
我想我不明白你的意思。你如何在Unity中「加載來自其他程序集的服務」? – Konamiman 2009-11-08 08:06:02