【发布时间】:2019-04-09 09:23:20
【问题描述】:
我将制作一个桌面应用程序,可以通过添加/删除 dll(每个模块由一个 dll 处理)或通过配置文件来添加/删除模块。
我的目标是有一个像eclipse ide这样的应用程序,一开始会有一些基本功能(eclipse basic),然后可能会安装其他功能作为插件,成为一个功能齐全的应用程序。
花费一些搜索并最终得到Managed Extensibility Framework (MEF)。问题是MEF似乎暂停支持很长时间,并且没有多少应用程序使用它。谁能告诉我为什么,我应该继续吗?我在WinForm方面有很多经验,但是WPF。
如果有其他方法,也请告诉我。
【问题讨论】:
-
恐怕这既过于宽泛,也需要工具。两者都不允许在这里。
-
我一直在寻找类似的基于插件的架构,看看MAF:docs.microsoft.com/en-us/dotnet/framework/wpf/app-development/…
-
这也有一段时间没有开发,但它是可用的并且使用起来相当简单。请注意,它不能保护您免受插件崩溃主机的影响。您可以通过在自己的进程中启动每个插件来解决这个问题。 SO中有一些有用的链接用于类似的事情,看看这个:msdn.microsoft.com/en-us/magazine/dn519924.aspx
-
最后一个 SO 链接可以提供更多见解(和更多链接)stackoverflow.com/questions/835182/…
标签: c# mef modular-design