我对 Visual Studio 2008 中的“复制到输出”功能有问题。也许我误解了它应该如何工作。
我有四个项目的解决方案:
依赖如下(依赖如项目引用)。
换句话说,依赖树看起来像这样。
TestApp1
TestProj1
TestProjA
TestProj1
TestAppA
TestProjA
TestProj1
(每个项目都有对标准程序集(system、system.core 等)的引用)
在 TestProj1 中,我添加了一个文本文件 Test.txt。在此文件的属性中,我指定了“构建操作:内容”和“复制到输出目录:始终复制”。
当我构建解决方案时,Test.txt 被复制到
该文件没有复制到 TestAppA\bin\debug ,这就是我觉得奇怪的地方。由于TestProj1 依赖于Test.txt 工作,而TestAppA 依赖于TestProj1,通过TestProjA,TestApp1 将无法工作。
如果我将一个来自 TestAppA 的项目引用直接添加到 TestProj1(所以我有一个对 TestProj1 的引用,另一个对 TestProjA 的引用),该文件将被复制到 TestAppA\bin\debug 文件夹中。
当然,我可以设置一个自定义构建事件来将文件 Test.txt 复制到 TestAppA\bin\debug,但是我对自定义构建事件的体验很糟糕,并且更愿意依赖内置的复制机制。
所以我的问题是:为什么不将 Test.txt 复制到 TestAppA\Bin\debug?
最佳答案
Todd 的回答已经很好了,但有两种更常见的解决方案是:
我还建议您的所有依赖项都可以简单地调用 TestProj1 中的 API 来检索它们需要的信息,从而允许该程序集封装数据并将其存储在任何地方,并且以它喜欢的任何格式存储。
关于visual-studio-2008 - Visual Studio 2008 项目引用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1839630/