我有一个像调度程序一样运行的Windows服务,它扩展了一个接口,可以由其他类实现,以成为此服务的插件。所有插件(例如Plugin1,Plugin2 ......)都将被分别插入PlugIn的子文件夹,如PlugIn \ Plugin1,PlugIn \ Plugin2。在运行时,将搜索每个子文件夹(Plugin1,Plugin2)以查找实现该接口的任何程序集,并使用相应的dll方法调度计时器。
现在,以防Plugin1& Plugin2共享一个common.dll(私有程序集),调度程序只加载一次(无论哪个先发生)。如果出于某些商业原因,我们更新了Plugin1的common.dll并将其复制到Plugin1文件夹中,使Plugin2保留了以前的版本,这就成了一个问题,因为现在common.dll将被非确定地加载。
有没有办法在调度时或以后将这组二进制文件(来自相应文件夹)与计时器绑定?