パブリッシュの .NET Core インクルード フォルダー

これを追加:

<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 を作成することを意味します 公開中に空の場合にのみフォルダに保存されます。


シンプルで便利な解決策があります:

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

ここでさらにトリックを見つけることができます:https://docs.microsoft.com/en-us/dotnet/core/tools/project-json-to-csproj


その中にプレースホルダー ファイルを配置できます (または既存のファイルを使用できます)。次に、ファイルをプロジェクトに追加し、ファイル プロパティを設定します:[出力ディレクトリにコピー]:[新しい場合はコピー] または [常にコピー]。

別の方法:ディレクトリを作成するポスト ビルド ステップ コマンドを追加します。