我需要一些基本的“可插拔”架构,如果我对实现的假设和想法是我认为的那样,那就很好奇。设置包含支持某些功能的所有类的“插件注册表”的基本过程如下:
在第四步中,我使用静态类“PluginRegistry”和静态类型初始化器,并将生成的数据结构(List< Plugin>)存储在静态只读IEnumerable<插件>
在整个应用程序中,我以这种方式使用插件:
PluginRegistry.Plugins.Where(plugin => plugin.Type == Logger).Foo();
这是在ASP.NET MVC应用程序中。 我假设:
我有一个正常运作的原型,但我担心无法预料的问题。
我的假设是否正确,是否有任何我应该注意的问题?