我需要将文件夹及其中的文件包含到部署过程中。此文件夹不属于该项目的一部分。该文件夹在构建服务器上创建。我不能在项目中包含这些文件。在部署中包含额外的文件
我发现这个answer非常有帮助。
我已经编辑我的web应用程序的csproj文件,并已将此添加到文件
<PropertyGroup>
<CopyAllFilesToSingleFolderForPackageDependsOn>CustomCollectFiles;$(CopyAllFilesToSingleFolderForPackageDependsOn);</CopyAllFilesToSingleFolderForPackageDependsOn>
<CopyAllFilesToSingleFolderForMsdeployDependsOn>CustomCollectFiles;$(CopyAllFilesToSingleFolderForPackageDependsOn);</CopyAllFilesToSingleFolderForMsdeployDependsOn>
</PropertyGroup>
<Target Name="CustomCollectFiles">
<ItemGroup>
<_CustomFiles Include="Workspace\build\**\*" />
<FilesForPackagingFromProject Include="%(_CustomFiles.Identity)">
<DestinationRelativePath>Workspace\build</DestinationRelativePath>
</FilesForPackagingFromProject>
</ItemGroup>
</Target>
应该从文件夹Workspace\build
包含的所有文件,并将其放置在同一个地方部署目录结束。
但不幸的是它不工作。我对msbuild不太好,所以我想我在这里错过了一些东西。
当你说它不工作,你的意思是你的自定义目标CustomCollectFiles没有被调用或被调用,但你的文件仍然没有被包括在内? – cokeman19
您是否尝试过使用PipelineCollectFilesPhaseDependsOn? – CodeFanatic
cokeman:正在调用,但我的文件不包括在内。 – user49126