从插件访问单身人士

时间:2012-12-13 10:20:39

标签: c# plugins singleton

应用程序的结构是我有两个单身人士。一个用于管理工作,一个用于管理SQLite数据库。

工作管理器加载希望访问数据库的插件。反正有没有让他们访问Singleton数据库管理器?如果我在插件dll中包含数据库管理器类 - 那会起作用吗?

我知道另一种方法是在插件界面中设置一个字段并在插件加载时设置该字段,我只是想知道是否有办法实现它并保留我的插件架构。

感谢。

修改

限制:

  • 无法使用外部库。
  • 我希望可以从插件中访问的单例类集合是,并且将始终是固定的。

1 个答案:

答案 0 :(得分:0)

您应该查看依赖注入容器,例如Castle WindowsSprint.NETNinject。这些将允许您自动注入依赖项或允许您的插件使用容器访问您的单例。 我已经使用了Castle Windsor很多并且可以推荐它,但其他提到的也被许多开发人员使用。对不起,但忘了提及Microsoft Unity container