Masalahnya sebenarnya sangat sederhana. Alih-alih membuat folder di Visual Studio, saya membuat struktur direktori untuk proyek saya di sistem file. Bagaimana cara saya memasukkan semua folder dan file dalam proyek, menjaga struktur?
Jika saya "Menambahkan File yang Ada" pada folder bernama Layanan dan menavigasi ke file dalam struktur direktori .. Layanan> Manajemen Akun> CreateAccount.cs, itu muncul di Visual Studio seperti: Layanan> CreateAccount.cs. Saya tidak menginginkan ini.
Saya sudah memiliki seluruh struktur direktori, karena saya meniru pengembang klien kami menggunakan struktur yang sama untuk organisasi. Bagaimana cara menambahkan semua folder dan file ke proyek di Visual Studio? Atau apakah saya harus melakukan apa yang sebagian besar pengguna Microsoft lakukan dan "tahan dengan itu" dan menciptakan kembali setiap folder melalui Visual Studio?
sumber
Jawaban:
Anda perlu meletakkan struktur direktori Anda di direktori proyek Anda. Dan kemudian klik ikon "Tampilkan Semua File" di bagian atas kotak alat Solution Explorer. Setelah itu, direktori yang ditambahkan akan ditampilkan. Anda kemudian harus memilih direktori ini, klik kanan, dan pilih "Sertakan dalam Proyek."
sumber
Anda juga dapat menarik dan melepas folder dari Windows Explorer ke jendela solusi Visual Studio Anda.
sumber
Dalam Visual Studio 2015, ini adalah bagaimana Anda melakukannya.
Jika Anda ingin secara otomatis menyertakan semua file turunan di bawah folder tertentu:
Ini dapat dibatasi untuk hanya menyertakan file dalam jalur yang ditentukan:
Atau bahkan hanya file dengan ekstensi yang ditentukan:
Referensi: http://jamesrpatterson.com/blog/automatic-include-in-project-for-visual-studio
sumber
Salin & Tempel .
Untuk Tambah folder, semua sub-direktori, dan file kita juga bisa Salin dan Tempel. Sebagai contoh kita dapat:
Klik kanan pada Windows explorer pada folder, dan Salin pada folder dengan banyak file dan folder.
Kemudian dalam penjelajah Solusi Visual Studio, klik kanan pada folder tujuan dan klik tempel.
Tambahkan opsional ke TFS; Kemudian di folder atas klik kanan dan periksa ke TFS untuk memeriksa semua sub-folder dan file.
sumber
Anda dapat menggunakan tautan simbolis. Ini membuat memodifikasi file dalam satu proyek memodifikasinya di yang lain (karena sebenarnya file yang sama).
Untuk melakukan ini:
Ini memiliki kelemahan dan jebakan, tapi saya menggunakannya pada kesempatan untuk duplikat pustaka yang membutuhkan nama yang berbeda.
Edit untuk Anoop: Langkah-langkah untuk ditambahkan ke Visual Studio:
Ini adalah langkah-langkah yang saya ikuti dan bekerja untuk beberapa proyek yang berbeda.
sumber
Di Visual Studio 2017, Anda beralih antara Tampilan Solusi dan Tampilan Folder bolak-balik. Saya pikir ini adalah pilihan yang lebih baik, karena itu akan menjaga solusinya tetap bersih. Saya menggunakan ini untuk mengedit file .gitignore, .md, dll.
sumber
Untuk memperluas jawaban Yuchen , Anda dapat memasukkan file dan jalur sebagai tautan. Ini bukan hal yang sama dengan menambahkan item yang ada karena tidak membuat salinan tambahan dalam struktur folder proyek Anda. Ini berguna jika Anda ingin satu folder / file kanonik dll untuk digunakan di banyak tempat yang berbeda tetapi Anda hanya ingin mempertahankan satu versi / salinannya.
Berikut adalah contoh dari apa yang dapat Anda tambahkan ke
*.csproj
file untuk membuat tautan$(Codez)
adalah variabel Lingkungan Windows yang saya definisikan, Anda dapat menggunakan variabel Lingkungan bawaan dengan cara yang sama.Grup contoh terakhir adalah sekelompok file konten yang saya butuhkan di hasil akhir. Lihat https://stackoverflow.com/a/11808911/492 dan jawaban lain & tautan di sana untuk informasi lebih lanjut.
Lebih lanjut info MSBuild di https://msdn.microsoft.com/en-us/library/bb629388.aspx
sumber
Saya rasa saya menemukan cara untuk melakukan ini dengan Compile Include = ". \ Code ***. Cs" Yang saya inginkan adalah memasukkan kode secara rekursif di bawah folder Code saya.
Ini adalah contoh file proyek.
sumber
Di Visual Studio 2013, saya tidak bisa mendapatkan "Sertakan dalam Proyek" untuk berfungsi ketika mengklik kanan pada folder. Apa yang berhasil adalah memperluas folder, memilih semua file kemudian memilih "Sertakan dalam Proyek". Itu cukup membosankan karena Anda harus melakukan setiap folder satu per satu (tapi setidaknya Anda dapat melakukan semua file dalam setiap folder sekaligus), dan tampaknya menyimpan path file (Anda dapat melihat ini dengan melihat properti pada file tersebut dan melihat opsi "Relative Path".)
Saya berharap untuk menggunakan ini untuk menyebarkan beberapa file data dalam proyek Visual Studio Installer, dan tampaknya untuk mengambil file yang disertakan dan mempertahankan jalurnya.
sumber
Sejauh yang saya tahu, satu-satunya cara untuk melakukan ini di VS2010 adalah mirip dengan metode drag and drop. Klik kanan solusi yang ingin Anda tambahkan proyek. Menu aplikasi akan memiliki item add .... Membuka itu, Anda menemukan bahwa salah satu opsi adalah menambahkan proyek yang ada ke solusi.
Di kotak dialog yang terbuka, navigasikan ke folder yang berisi file proyek untuk solusi dan pilih. VS akan, sebagai bagian dari pengimporan file proyek itu, juga mengimpor seluruh direktori dan, saya mengasumsikan direktori bawahan yang merupakan bagian dari proyek itu.
Karena ini memerlukan file proyek yang ada, tidak akan mustahil untuk mengimpor pohon direktori sampai pohon itu telah dikonversi ke proyek.
sumber
Saya tidak menemukan jawaban untuk kepuasan saya, jadi saya mencari tahu sendiri.
Inilah jawaban untuk Anda jika Anda ingin menambahkan kode sumber eksternal ke proyek Anda dan tidak ingin menyalin seluruh kode. Saya memiliki banyak dependensi pada git lain dan mereka diperbarui setiap jam jika tidak teliti. Saya tidak bisa menyalin setiap jam untuk melakukan sinkronisasi. Inilah yang perlu Anda lakukan.
Asumsikan ini adalah struktur:
/ root / projA / src
/ root / projA / termasuk
/ root / projB / src
/ root / projB / termasuk
/ root / yourProj / src
/ root / yourProj / termasuk
Lakukan hal yang sama untuk projB. Sekarang proyek eksternal / yang ada di luar Anda hadir dalam solusi / proyek Anda. VS akan mengkompilasinya bersama. Ini sebuah trik. Karena projA dan projB adalah folder virtual di bawah proyek Anda, kompiler mungkin tidak menemukan projA / termasuk.
Jika tidak menemukan projA / include, maka klik kanan proyek, pilih "Properties".
Satu peringatan, jika ada duplikat menyertakan / file header, "kecualikan dari proyek" pada "file Header" tidak benar-benar berfungsi. Ini bug di VS.
sumber
Visual Studio 2017 dan yang lebih baru mendukung
.csproj
format ringan baru yang kemudian dikenal sebagai "format SDK". Salah satu dari beberapa kelebihan format ini adalah bahwa alih-alih berisi daftar file dan folder yang disertakan , file-file tersebut termasuk wildcard secara default. Karenanya, dengan format baru ini, file dan folder Anda - ditambahkan di Explorer atau pada baris perintah - akan diambil secara otomatis!.csproj
File format SDK saat ini berfungsi dengan jenis proyek berikut :Proyek perpustakaan kelas
Aplikasi konsol
Aplikasi web ASP.NET Core
.NET Core proyek dari jenis apa pun
Untuk menggunakan format baru, buat proyek .NET Core atau .NET Standard baru. Karena templat belum diperbarui untuk .NET Framework lengkap bahkan di Visual Studio 2019, untuk membuat perpustakaan kelas .NET pilih templat .NET Standard Library template, dan kemudian edit file proyek untuk menargetkan versi kerangka pilihan Anda ( format proyek gaya baru dapat diedit di dalam Visual Studio - cukup klik kanan proyek di Solution Explorer dan pilih "Edit file proyek"). Sebagai contoh:
Bacaan lebih lanjut:
sumber