我有一个Windows服务。这个想法是尽可能多地执行不同的任务。可以说我们有Starter()和Stop()方法的IServicePart接口。当服务启动时,它将搜索某个目录中的所有程序集,并查找实现IServicePart的所有类。完成,没问题。Windows服务+插件设计
问题:
Assembly1.dll是IServicePart一个很好的候选人。但它需要一个配置。例如Assembly1.dll.config。现在我可以将dll复制/粘贴/重命名为task2.dll和task2.dll.config,并为该服务创建第二个任务。每个插件都带有10-20个dll依赖关系
1)最明显的问题是如何加载配置,因为服务主机的appDomain与assembly1和task2不同。
2)我想到的问题,当我尝试时,他们依赖于同一个第三方组件
解决方案1是让一个自定义的配置,而不是使用的app.config来加载两个IServiceParts。
解决方案2将在其自己的appDomain中运行每个插件。
你有什么建议。
希望我解释这个正确
===================
参考:类似的问题在这里:Plugin to use its own app.config
不错。你能分享一个样本,你如何在新域中运行插件? MAF的早期版本是MEF吗? – mynkow
好吧,先阅读然后问。我知道了! – mynkow
嘿布伦特。如果你有时间可以看看这个:http://social.msdn.microsoft.com/Forums/en/csharpgeneral/thread/15760b47-1740-4129-9851-79fd506f903a关心! – mynkow