有没有办法让visual studio发布所有pdf文件?
我知道您可以使用Build Action在项目中设置每个单独的pdf文件 “内容”属性。
但这意味着对我当前的项目做同样的事情100次,有没有办法改变全局设置来做同样的事情?
答案 0 :(得分:15)
有一种更简单的方法,你必须先确保你的文件包含在项目中,然后右键单击文件转到属性,会有一个选项“复制到输出目录”,选择“总是复制” “
祝你好运答案 1 :(得分:13)
只需右键单击要包含的文件,选择属性,在属性窗口中将构建操作更改为内容。这将包括发布期间的文件。
答案 2 :(得分:5)
使用以下命令添加post build事件:
xcopy "$(ProjectDir)myPdfs\*.pdf" "$(TargetDir)myPdfs\" /S /Y
在上面的命令中注意myPdfs
只是项目目录的子文件夹,其中包含所有PDF文件。如果您有多个子文件夹,则需要为每个子文件夹运行命令。
希望这有效!!
答案 3 :(得分:3)
假设您希望在c:\ PDFs中部署项目之外的PDF,请修改.csproj
<ItemGroup>
<Content Include="c:\PDFs\**\*.pdf" />
</ItemGroup>
如果它们位于相对于项目根目录的文件夹“MyPdfs”中
<ItemGroup>
<Content Include="MyPdfs\**\*.pdf" />
</ItemGroup>
有关此问题的更多详细信息,请访问:https://stackoverflow.com/a/12202917/37055
答案 4 :(得分:2)
打开csproj
文件并更改:
<None Include="my.pdf">
为:
<Content Include="my.pdf">
答案 5 :(得分:1)
您可以直接编辑项目文件,将所需的<CopyToOutputDirectory>Always</CopyToOutputDirectory>
元素添加到PDF文件中。 (如果您的项目不受源代码管理,请先测试副本并保留备份,以防万一出错)
答案 6 :(得分:1)
CopyToOutputDirectory会在您发布时将文件复制到bin文件夹。将“Build Action”设置为“Content”将复制文件而无需CopyToOutputDirectory设置。但是仍然需要对每个文件进行此操作。您可以在项目文件中从<None Include="XXX.pdf" />
到<Content Include="XXX.pdf" />
进行正则表达式替换。