我有两个C#项目,其中一个是库,包含一个在PreBuildEvent期间修改的数据库文件。其内容已正确更新,并可在此库项目的bin \ Debug文件夹中使用。
出现问题是因为在其他项目中,UI应用程序,数据库文件与我在PreBuildEvent中的更改之前相同。
在下面的示例中,我将使用文本文件(它的行为相同):
ProjectLib.csproj
PreBuildEvent:
echo test > $(TargetDir)TextFile1.txt
ProjectLib \ bin \ Debug中的TextFile1.txt的内容:
test
Application.csproj
Application \ bin \ Debug中的TextFile1.txt的内容:
"empty"
从哪里挑选数据库文件?来自$(ProjectDir)
还是$(TargetDir)
? 编辑:从$(ProjectDir)
中挑选数据库文件。你可以看到这使用msbuild执行构建。最后有一个名为_CopyOutOfDataSourceItemsToOutputDirectory
的目标,它将来源显示为$(ProjectDir)
。
有没有办法修改PreBuildEvent中的文件 - 库bin \ Debug中的文件 - 并将其正确输出到应用程序bin \ Debug?
答案 0 :(得分:0)
为什么要设计构建系统以使两个单独的项目覆盖关键依赖项?