gpt4 book ai didi

c# - 如何像 visual studio 一样将单声道复制数据文件制作到子目录中

转载 作者:太空宇宙 更新时间:2023-11-03 23:33:24 25 4
gpt4 key购买 nike

我有一个引用共享项目的 C# 项目。共享项目包含很多我想复制到文件夹中的数据,例如

Data/file1.txt

当使用 visual studio 构建时,所有文件都移动到带有子文件夹的输出目录,例如

bin/Release/Data/file1.txt

但在单声道上,它会忽略子目录,例如

bin/Release/file1.txt

如何强制单声道在构建过程中保持相同的目录结构?

作为更新,在构建过程中我还看到了以下内容:

Target _CopyDeployFilesToOutputDirectoryPreserveNewest:
Copying file from 'Data/file1.txt' to 'bin/Release/file1.txt'

最佳答案

更新:这似乎是 Xamarian Studio 5.9.4 中的错误。带有标记为复制到输出目录的项目的共享项目将不遵守它们在项目中的目录结构...

假设:

  • MonoDevelop/Xamarian Studio 5.9.x+
  • 项目在项目选项/构建/常规面板中被标记为使用 MSBuild
  • 项目是.shproj(有bug,其他项目类型没问题)

将文件属性设置为:

  • 复制到输出目录

enter image description here

构建你应该有:

.
├── AGenericFile.txt
├── Data
│   ├── Data2
│   │   └── file2.txt
│   ├── SharedData.txt
│   └── file1.txt
├── Data2
│   └── file3.txt
├── foodata.exe
└── foodata.exe.mdb

如果您仍然遇到问题,请查看您的项目 xml 并确保您有一个

<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>

在每个数据文件上设置。

项目/工具/编辑文件:

~~~
<ItemGroup>
<Folder Include="Data\" />
<Folder Include="Data\Data2\" />
<Folder Include="Data2\" />
</ItemGroup>
<ItemGroup>
<None Include="AGenericFile.txt">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="Data\file1.txt">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="Data\Data2\file2.txt">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="Data2\file3.txt">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup>
~~~

关于c# - 如何像 visual studio 一样将单声道复制数据文件制作到子目录中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31363638/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com