Ik ben samen met een vriend aan een project aan het werken welke gebruik maakt van MEF voor plugin support. Het programma heeft momenteel 3 plugin types welke allemaal minimaal van IPlugin inheriten:
De plugins worden in 3 arrays geïmporteerd in een plugin manager class (1 array per plugin type). Alles werkt prima, maar de gebruiker moet de mogelijk hebben om plugins te disablen. Nu weet ik niet hoe ik dit het best kan aanpakken. Heeft MEF iets die dit mogelijk maakt? Zo niet, is het een goed idee om een "Enabled" property toe te voegen aan aan IPlugin (plugins slaan momenteel niets van settings op)? Of iets anders?
C#:
1
2
3
4
5
| public interface IPlugin { Guid Guid { get; } PluginInfo PluginInfo { get; } } |
De plugins worden in 3 arrays geïmporteerd in een plugin manager class (1 array per plugin type). Alles werkt prima, maar de gebruiker moet de mogelijk hebben om plugins te disablen. Nu weet ik niet hoe ik dit het best kan aanpakken. Heeft MEF iets die dit mogelijk maakt? Zo niet, is het een goed idee om een "Enabled" property toe te voegen aan aan IPlugin (plugins slaan momenteel niets van settings op)? Of iets anders?
Asus P8P67 EVO | i5 2500k (4.8 GHz) | Sapphire HD 7970 Vapor-X GHz Ed. | 8 GB DDR3 1600 | 1 TB HDD