.NET Core включает папку в публикации - PullRequest
0 голосов
/ 19 февраля 2019

У меня есть следующая структура папок для моего проекта .NET Core 2.1:

Как включить папку AppData и все ееподпапки и файлы при публикации решения?

Я пытался добавить это в файл .csproj, но он не работал:

<ItemGroup>
    <Folder Include="AppData\*" />
</ItemGroup>

РЕДАКТИРОВАТЬ

Я тоже пытался с этим, и это не сработало:

<ItemGroup>
    <Content Include="AppData\**" LinkBase="AppData" />
</ItemGroup>

Ответы [ 2 ]

0 голосов
/ 19 февраля 2019

Добавление этого:

<ItemGroup> 
  <Content Include="AppData\**"> 
    <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> 
  </Content> 
</ItemGroup>

в ваш файл .csproj скопирует папку AppData, если она не пуста.Для пустой папки AppData вы можете использовать этот обходной путь:

<Target Name="CreateAppDataFolder" AfterTargets="AfterPublish">
  <MakeDir Directories="$(PublishDir)AppData" Condition="!Exists('$(PublishDir)AppData')" /> 
</Target>

Это создаст папку AppData после публикации, если она не будет уже включена в вывод.Это означает, что папка AppData будет создана, только если она пуста при публикации.

0 голосов
/ 19 февраля 2019

Вы можете поместить файл-заполнитель в него (или использовать ваши существующие файлы).Затем добавьте файл в проект и задайте свойства файла: Копировать в выходной каталог: Копировать, если новее, или Копировать всегда.

Другой способ: добавить команду шага после сборки, которая создает каталог.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...