在Azure Worker Role中包含额外的dll

时间:2017-01-21 09:38:41

标签: c# .net azure azure-cloud-services

我已创建Azure辅助角色。此Azure辅助角色服务有一个子文件夹,其中包含在运行时使用MEF动态加载的额外dll。最初子文件夹为空,但在编译其他项目时会填充它,因为它们的构建输出文件夹是服务的子文件夹。当我发布辅助角色时,它不包含其他项目在服务子文件夹中复制的额外dll。

如何在worker角色包子文件夹中包含这些dll?

1 个答案:

答案 0 :(得分:1)

我按照Simple Calculator MEF Application来构建我的MEF应用程序。我将Interface移动到一个名为ISimpleCalculator的类库,这是我项目的结构:

注意: Extensions文件夹用于存储额外的库。并且项目ExtendedOperations将被编译到项目SimpleCalculator3的根目录中的Extensions文件夹中。此外,ExtendedOperations和SimpleCalculator3之间没有任何直接引用。

构建SimpleCalculator3时,不会编译ExtendedOperations。但是当右键单击启动项目时,选择" Build Dependencies>项目依赖项",选择额外的lib项目,然后单击“确定”,如下所示:

配置完成后,可以在启动SimpleCalculator3时将ExtendedOperations编译到Extensions文件夹中,并且ExtendedOperations的新功能将生效。此外,还有类似的issue,您可以参考它。