Как настроить Visual Studio для автоматической публикации pdf-файлов

есть ли способ установить visual studio для публикации всех pdf-файлов?

Я знаю, что вы можете установить каждый отдельный файл pdf в проекте с помощью действия сборки "Свойство content.

но это означает, что делать то же самое 100 раз для моего текущего проекта, есть ли способ изменить глобальную настройку, чтобы сделать то же самое?

7 ответов


Предположим, у вас были PDF-файлы, которые вы хотите развернуть вне проекта в c:\PDFs, изменить .csproj файл

<ItemGroup>
    <Content Include="c:\PDFs\**\*.pdf" />
</ItemGroup>

если они находятся в папке "MyPdfs" относительно корня проекта

<ItemGroup>
    <Content Include="MyPdfs\**\*.pdf" />
</ItemGroup>

некоторые дополнительные сведения об этом можно найти на:https://stackoverflow.com/a/12202917/37055


есть более простой способ, вы должны сначала убедиться, что ваш файл включен в проект, а затем щелкните правой кнопкой мыши файл перейти к свойствам, появится опция "копировать в выходной каталог", выберите "Копировать всегда"

удачи


просто щелкните правой кнопкой мыши на файле, который вы хотите включить, выберите Свойства, В окне Свойства измените действие сборки на контент. Это будет включать файл во время публикации.


добавьте событие post build со следующей командой:

xcopy "$(ProjectDir)myPdfs\*.pdf" "$(TargetDir)myPdfs\" /S /Y

Примечание В приведенной выше команде myPdfs - это просто подпапка вашего каталога проекта, которая содержит все PDF-файлы. Если у вас есть более одной из этих подпапок, вам нужно выполнить команду для каждой.

надеюсь, что это работает!!


открыть csproj файл и измените :

<None Include="my.pdf">

в:

<Content Include="my.pdf">

вы можете редактировать файл проекта напрямую, чтобы добавить требуемый <CopyToOutputDirectory>Always</CopyToOutputDirectory> элементы в PDF-файлы. (Если ваш проект не находится под контролем источника, сначала проверьте копию и сохраните резервные копии, если все пойдет не так)


CopyToOutputDirectory будет копировать файлы в папку bin при публикации. Установка " Build Action "в" Content " будет копировать файлы без необходимости установки CopyToOutputDirectory. Но это еще нужно сделать в каждом файле. Вы можете сделать регулярное выражение replace в файле проекта из <None Include="XXX.pdf" /> до <Content Include="XXX.pdf" />.