我與MEF戰鬥,我停在了一些問題 - 在我的應用我有單例類:填充MEF插件與配置數據
class Config: IConfig {
}
存儲應用程序配置數據 - 加載例如從XML文件, DB等
現在我有一些插件必須能夠訪問配置 - 所以我想知道什麼是最好的解決方案將配置傳遞給插件?
我現在的解決方案是:
[ImportMany(typeof (IFieldPlugin))]
public IEnumerable<Lazy<IFieldPlugin, IFieldPluginData>> fieldPlugins;
foreach (var plugin in PluginsStorage.Instance.fieldPlugins)
{
if (plugin.Metadata.Name.Equals(field.Plugin))
{
if(!plugin.IsValueCreated) {
plugin.Value.Config = Config.Instance;
}
result = plugin.Value.DoStep(this,url);
}
}
任何更好的解決方案?
你有關於這個的例子嗎? – Luke 2012-12-12 14:17:11