簡體   English   中英

C# .NET 插件框架

[英]C# .NET Plugin Framework

我一直在使用 C# 開發基於插件的應用程序。 偶然發現了托管可擴展性框架 (MEF),但這似乎已經過時,並且對 Prism 和其他框架的支持已經下降。

.NET Framework 有 MEF 的替代品嗎? 很多關於插件的信息都相當陳舊。

謝謝

MEF 不是依賴注入容器,因此它已被刪除。 那么在哪里看呢?

  • Unity Container(不要與 Unity 游戲開發框架混淆)長期以來一直是 Prism 開發人員非常流行的容器,並且是 Brian 多年來一直使用的容器。
  • DryIoc 在過去幾年中一直是一種非常流行且速度極快的替代方案,並且由於它的性能和出色的 API 已經轉變了許多長期的 Unity 粉絲。
  • WPF 目前仍支持 Ninject。 也就是說,這在未來可能會改變。 該項目顯示出死亡的跡象。 它們已經超過 2 年沒有發布了,它不是特別快,或者被 Prism 開發人員廣泛使用。
  • BYOC(自帶容器)... Prism 7 引入了一個完整的依賴注入抽象。 這意味着如果您想要使用一個容器,您可以為您想要的容器實現 IContainerExtension 並將其引入到您的項目中。 注意對於 WPF 開發,您仍然需要將該容器綁定到 WPF 當前使用的 ServiceLocator。 您可以從這篇關於使用“不支持的”DI 容器的博客文章中閱讀更多相關信息

.NET Framework 有 MEF 的替代品嗎?

MEF 作為插件框架非常好,無需查看其他地方。

但是您不應將其用作依賴項注入容器(請參閱 Dan 的回答)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM