Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Penjelajah Solusi menumpuk file terkait untuk membantu mengaturnya dan membuatnya lebih mudah ditemukan. Misalnya, jika Anda menambahkan formulir Windows Forms ke proyek, file kode untuk formulir disarangkan di bawah formulir di Penjelajah Solusi. Dalam proyek .NET Core (dan .NET 5 dan yang lebih baru), penataan berkas dapat ditingkatkan lebih lanjut. Anda dapat memilih antara preset penyusunan file Nonaktif, Default, dan Web. Anda juga dapat menyesuaikan bagaimana file disarangkan atau membuat pengaturan khusus solusi dan khusus proyek.
Nota
Di Visual Studio 2022 versi 17.2 dan yang lebih lama, fitur ini hanya didukung untuk proyek ASP.NET Core. Pada versi 17.3 dan yang lebih baru, semua proyek yang menargetkan .NET mendukung penyusunan berkas bersarang.
Opsi pengelompokan file
Opsi yang tersedia berkaitan dengan penumpukan file yang tidak dikustomisasi adalah:
Nonaktif: Opsi ini memberi Anda daftar file datar tanpa bersarang.
Default: Opsi ini memberi Anda perilaku penempatan berkas bawaan di Penjelajah Solusi. Jika tidak ada pengaturan untuk jenis proyek tertentu, maka tidak ada file dalam proyek yang ditumpuk. Jika ada pengaturan (misalnya, untuk proyek web), pengelompokan diterapkan.
Web: Opsi ini menerapkan perilaku pembuatan sarang file Web ke semua proyek dalam solusi saat ini. Ini memiliki banyak aturan, dan kami mendorong Anda untuk memeriksanya dan memberi tahu kami apa yang Anda pikirkan. Screenshot berikut menyoroti beberapa contoh perilaku pengelompokan file yang Anda dapatkan dengan memilih opsi ini:
Sesuaikan penataan file
Jika Anda tidak menyukai apa yang Anda dapatkan dari pengaturan bawaan, Anda dapat membuat pengaturan penyusunan berkas kustom Anda sendiri untuk mengatur bagaimana Penjelajah Solusi mengelompokkan berkas. Anda dapat menambahkan pengaturan penempatan file kustom sebanyak yang diinginkan, dan Anda dapat beralih di antara pengaturan tersebut sesuai keinginan. Untuk membuat pengaturan kustom baru, Anda bisa memulai dengan file kosong, atau Anda bisa menggunakan pengaturan Web sebagai titik awal Anda:
Sebaiknya gunakan pengaturan Web sebagai titik awal Anda karena lebih mudah untuk bekerja dengan sesuatu yang sudah berfungsi. Jika Anda menggunakan pengaturan Web sebagai titik awal, file .filenesting.json terlihat mirip dengan file berikut:
Mari kita fokus pada node dependentFileProviders dan node anaknya. Setiap node anak adalah tipe aturan yang dapat digunakan Visual Studio untuk mengelompokkan file. Misalnya, memiliki nama file yang sama, tetapi ekstensi yang berbeda adalah salah satu jenis aturan. Aturan yang tersedia adalah:
extensionToExtension: Gunakan jenis aturan ini untuk menumpuk file.js di bawah file.ts
fileSuffixToExtension: Gunakan jenis aturan ini untuk menumpuk file-vsdoc.js di bawah file.js
addedExtension: Gunakan jenis aturan ini untuk menumpuk file.html.css di bawah file.html
pathSegment: Gunakan jenis aturan ini untuk menumpuk jquery.min.js di bawah jquery.js
allExtensions: Gunakan jenis aturan ini untuk menumpuk file.* di bawah file.js
fileToFile: Gunakan jenis aturan ini untuk menumpuk bower.json di bawah
.bowerrc
Penyedia ExtensionToExtension
Penyedia ini memungkinkan Anda menentukan aturan penataan file menggunakan ekstensi file tertentu. Pertimbangkan contoh berikut:
cart.js tertanam di bawah cart.ts karena aturan extensionToExtension pertama
cart.js tidak bersarang di bawah cart.tsx karena
.tsmuncul sebelum.tsxdalam aturan, dan hanya bisa ada satu induk.light.css disarangkan di bawah light.sass karena aturan extensionToExtension kedua
home.html disarangkan di bawah home.md karena aturan extensionToExtension ketiga
Penyedia fileSuffixToExtension
Penyedia ini berfungsi seperti penyedia extensionToExtension , dengan satu-satunya perbedaan adalah bahwa aturan melihat akhiran file alih-alih hanya ekstensi. Pertimbangkan contoh berikut:
portal-vsdoc.js disarangkan di bawah portal.js karena aturan fileSuffixToExtension
Setiap aspek lainnya dari aturan berfungsi dengan cara yang sama seperti extensionToExtension
Penyedia addedExtension
Penyedia ini menumpuk file dengan ekstensi tambahan di bawah file tanpa ekstensi tambahan. Ekstensi tambahan hanya dapat muncul di akhir nama file lengkap.
Pertimbangkan contoh berikut:
- file.html.css disarangkan di bawah file.html karena aturan addedExtension
Nota
Anda tidak menentukan ekstensi file apa pun untuk addedExtension aturan; ekstensi tersebut secara otomatis berlaku untuk semua ekstensi file. Artinya, file apa pun dengan nama dan ekstensi yang sama dengan file lain ditambah ekstensi tambahan di akhir disarangkan di bawah file lain. Anda tidak dapat membatasi efek penyedia ini hanya pada ekstensi file tertentu.
Penyedia pathSegment
Penyedia ini menumpuk file dengan ekstensi tambahan di bawah file tanpa ekstensi tambahan. Ekstensi tambahan hanya dapat muncul di tengah nama file lengkap.
Pertimbangkan contoh berikut:
- jquery.min.js disarangkan di bawah jquery.js karena aturan pathSegment
Nota
Jika Anda tidak menentukan ekstensi file spesifik untuk aturan
pathSegment, itu berlaku untuk semua ekstensi file. Artinya, file apa pun dengan nama dan ekstensi yang sama dengan file lain ditambah ekstensi tambahan di tengah disarangkan di bawah file lain.Anda dapat membatasi efek aturan ke
pathSegmentekstensi file tertentu dengan menentukannya dengan cara berikut:"pathSegment": { "add": { ".*": [ ".js", ".css", ".html", ".htm" ] } }
Penyedia allExtensions
Penyedia ini memungkinkan Anda menentukan aturan sarang file untuk file dengan ekstensi apa pun dan nama dasar yang sama. Pertimbangkan contoh berikut:
- template.cs dan template.doc disarangkan di bawah template.tt karena aturan allExtensions .
Penyedia fileToFile
Penyedia ini memungkinkan Anda menentukan aturan penumpukan file berdasarkan seluruh nama file. Pertimbangkan contoh berikut:
- .bowerrc disarangkan di bawah bower.json karena aturan fileToFile
Urutan penerapan aturan
Pengurutan penting di setiap bagian file pengaturan kustom Anda. Anda dapat mengubah urutan di mana aturan dijalankan dengan memindahkannya ke atas atau ke bawah di dalam node dependentFileProvider . Misalnya, jika Anda memiliki satu aturan yang membuat file.js induk file.ts dan aturan lain yang menjadikan file.coffee sebagai induk file.ts, urutan munculnya dalam file menentukan perilaku bersarang ketika ketiga file ada. Karena file.ts hanya dapat memiliki satu induk, aturan yang dijalankan pertama kali akan menang.
Pemesanan juga penting untuk bagian aturan itu sendiri, bukan hanya untuk file di dalam bagian. Segera setelah sepasang file dicocokkan dengan aturan berlapis file, aturan lain lebih jauh ke bawah dalam file diabaikan, dan pasangan file berikutnya diproses.
Tombol pengelompokan file
Anda dapat mengelola semua pengaturan, termasuk pengaturan kustom Anda sendiri, melalui tombol yang sama di Penjelajah Solusi:
Membuat pengaturan khusus proyek
Anda dapat membuat pengaturan khusus solusi dan khusus proyek melalui menu klik kanan (menu konteks) dari setiap solusi dan proyek:
Pengaturan khusus solusi dan khusus proyek dikombinasikan dengan pengaturan Visual Studio aktif. Misalnya, Anda mungkin memiliki file pengaturan khusus proyek yang kosong, tetapi Penjelajah Solusi masih mengelompokkan file. Perilaku bersarang berasal dari pengaturan yang spesifik untuk solusi atau dari pengaturan Visual Studio. Urutan prioritas untuk menggabungkan pengaturan perapihan file adalah: Visual Studio > Solusi > Proyek.
Anda dapat memberi tahu Visual Studio untuk hanya menggunakan pengaturan khusus solusi atau khusus proyek, dengan mengatur simpul akar ke true. Visual Studio berhenti menggabungkan file pada tingkat tersebut dan tidak menggabungkannya dengan file yang lebih tinggi ke hierarki.
Pengaturan khusus solusi dan khusus proyek dapat diperiksa ke kontrol sumber, dan seluruh tim yang bekerja di basis kode dapat membagikannya.
Nonaktifkan aturan penyusunan berkas untuk proyek
Anda dapat menonaktifkan aturan penyusunan bersarang file global yang ada untuk solusi maupun proyek tertentu dengan menggunakan tindakan hapus untuk penyedia alih-alih menambah. Misalnya, jika Anda menambahkan kode pengaturan berikut ke proyek, semua aturan pathSegment yang mungkin ada secara global untuk proyek tertentu ini dinonaktifkan:
"dependentFileProviders": {
"remove": {
"pathSegment": {}
}
}
Konten terkait
- Personalisasi IDE
- Solusi dan proyek di Visual Studio