Visual studio MSBuild-如何根据条件复制文件

Visual studio MSBuild-如何根据条件复制文件,visual-studio,msbuild,msbuild-task,Visual Studio,Msbuild,Msbuild Task,使用MSBuild如何基于生成的配置复制文件,即如果生成配置是暂存还是发布。如果构建配置是暂存配置,我需要能够复制FolderA\FileA,而生产配置是FolderB\FileB。此外,复制文件时,该文件应位于输出目录的根目录,而不是FolderA或FolderB文件夹中。使用任务是在项目加载期间抛出错误 MSBuild-如何根据条件复制文件 对于项目文件中的复制任务,可以使用Condition=“”$(配置)”==“xxx” 要完成此任务,请卸载您的项目。然后在项目的最后,在结束标记之前,放

使用MSBuild如何基于生成的配置复制文件,即如果生成配置是暂存还是发布。如果构建配置是暂存配置,我需要能够复制FolderA\FileA,而生产配置是FolderB\FileB。此外,复制文件时,该文件应位于输出目录的根目录,而不是FolderA或FolderB文件夹中。使用任务是在项目加载期间抛出错误

MSBuild-如何根据条件复制文件

对于项目文件中的复制任务,可以使用
Condition=“”$(配置)”==“xxx”

要完成此任务,请卸载您的项目。然后在项目的最后,在结束标记
之前,放置以下脚本:

  <ItemGroup>
    <MySourceFilesA Include="FolderA\FileA.txt" />
    <MySourceFilesB Include="FolderB\FileB.txt" />
  </ItemGroup>

  <Target Name="CopyFiles" AfterTargets="Build">
    <Copy SourceFiles="@(MySourceFilesA)" DestinationFolder="$(OutDir)" Condition=" '$(Configuration)' == 'Staging' " />
    <Copy SourceFiles="@(MySourceFilesB)" DestinationFolder="$(OutDir)" Condition=" '$(Configuration)' == 'Release' " /> 
  </Target>

您可以根据需要修改
SourceFiles
DestinationFolder
的paht,只需确保路径正确即可

希望这有帮助