Bagi mereka yang mengalami masalah dalam menggunakan jawaban Chris , ini adalah solusi untuk Visual Studio 2012 dan yang lebih baru:
<Target Name="ContentsBeforeBuild" AfterTargets="BeforeBuild">
<ItemGroup>
<Content Include="images\**" />
</ItemGroup>
</Target>
Seperti yang dikatakan Chris dalam jawabannya - Visual Studio tidak akan menyentuh <Target>bagian ini , meskipun Anda secara manual mengutak-atik (menambahkan / menghapus file) dengan direktori target.
Harap dicatat bahwa Anda harus menyertakan subdirektori tempat file-file tersebut berada (dalam kasus di atas, itu images). Visual Studio / MSBuild akan menempatkan file tersebut di direktori yang sama dalam struktur proyek. Jika Anda tidak menggunakan subdirektori, file akan ditempatkan di root struktur proyek.
Untuk penjelasan singkat tentang wildcard:
**Berarti semuanya secara rekursif (file, subdirektori, dan file di dalamnya)
*.extakan menyertakan semua file dengan ekstensi extdi dalam direktori level teratas, tetapi tidak subdirektori
- Misalnya,
*.extbisa *.png, *.js, dll Setiap ekstensi file akan bekerja
**\*.extakan menyertakan semua file dengan ekstensi extdari direktori level teratas dan semua subdirektori.
- Lihat jawaban dari Bagaimana cara menggunakan pola penamaan Nant / Ant? untuk penjelasan yang lebih lengkap beserta contohnya.
Untuk penyelesaiannya, perlu diketahui bahwa ada perbedaan antara menggunakan <Target>dan tidak menggunakannya.
Dengan <Target>pendekatan ini, Visual Studio tidak akan menampilkan file di dalam Solution Explorer.
<Target Name="ContentsBeforeBuild" AfterTargets="BeforeBuild">
<ItemGroup>
<Content Include="images\**" />
</ItemGroup>
</Target>
<Target>Pendekatan non- akan memerintahkan Visual Studio untuk menampilkan file dalam Solution Explorer. Kekurangannya adalah manipulasi direktori otomatis akan menyebabkan Visual Studio menimpa entri wildcard. Perlu juga dicatat bahwa pendekatan di bawah ini hanya akan memperbarui Penjelajah Solusi setelah membuka Solusi / Proyek di VS. Bahkan tombol toolbar "refresh" Solution Explorer tidak akan melakukannya.
<ItemGroup>
<Content Include="images\**" />
</ItemGroup>