我的项目中的模块在构建后被复制到一个文件夹,并通过 DirectoryCatalog
导入。但是,因为模块项目没有在主项目中的任何地方被引用或实例化,所以当我按 F5 进行调试 session 时,在对它进行更改后,它不会自动构建,因此会出现相同的错误,直到我明确地去构建模块项目本身。
我正在寻找一种在构建主项目之前自动构建所有模块项目的方法。我必须有一个预构建事件并为这些项目中的每一个调用 C# 编译器,但那是我完全迷失的地方。我该怎么做?
最佳答案
我相信有很多方法可以做到这一点,但最简单和最轻松的方法是只引用项目(请注意不要通过直接访问这些项目中的对象来破坏 MEF)。为确保从这些项目中获得最新版本,您需要将 DirectoryCatalog 路径指向引用它的项目的 bin 文件夹。这是一条捷径,但它一直有效。您还可以尝试添加一些构建后事件,但如果您与其他人共享代码并使用中央存储库,这可能会引起潜在的麻烦。
关于c# - 如何自动构建 MEF 模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22940192/