如何构建C#插件框架?

Seb*_*ray 5 c# plugins dynamic-linking

我想为C#应用程序实现一个Plug-In框架; 这样应用程序在编译时不需要知道所有可用的.DLL,但可以在运行时动态链接.我希望我需要设置一些预期的参数来传入和传出插件的信息,但我不确定还需要什么,或者如何在C#中解决这个问题.你能指点一下这个实现的模式,或者我可以实现的框架(如果需要API - 需要开源许可证)吗?

Nol*_*rin 7

托管扩展性框架(MEF)绝对是你想看看东西.它由Microsoft开发,稳定版本包含在.NET 4.0及更高版本中.


Lot*_*tfi 5

你应该看看Mono.Addins库.它是开源的,易于使用,而且非常强大(我认为它甚至被MonoDevelop本身使用).