* Catatan: lihat http://www.jetbrains.net/devnet/message/5244658 untuk versi lain dari jawaban ini.
Membaca postingan, sepertinya ada kebingungan dengan pertanyaan aslinya. Biarkan saya mencobanya.
Posting asli benar-benar mengajukan pertanyaan: "Bagaimana cara mengidentifikasi dan menghapus referensi dari satu proyek Visual Studio ke proyek / rakitan lain yang tidak digunakan?" Poster ingin agar rakitan tidak lagi muncul sebagai bagian dari keluaran build.
Dalam hal ini, ReSharper dapat membantu Anda mengidentifikasinya , tetapi Anda harus menghapusnya sendiri.
Untuk melakukan ini, buka Referensi di Browser Solusi, klik kanan mouse pada setiap rakitan yang direferensikan, dan pilih "Temukan Kode yang Tergantung". Lihat:
http://www.jetbrains.com/resharper/features/navigation_search.html#Find_ReferencedDependent_Code
Anda juga akan mendapatkan:
Daftar dependensi pada Referensi tersebut di jendela browser, atau
Dialog yang memberi tahu Anda "Kode bergantung pada modul XXXXXXX tidak ditemukan.".
Jika Anda mendapatkan hasil kedua, Anda dapat mengklik kanan mouse pada Referensi, pilih Hapus, dan hapus dari proyek Anda.
Meskipun Anda harus melakukannya "secara manual", yaitu satu referensi pada satu waktu, ini akan menyelesaikan pekerjaan. Jika seseorang telah mengotomatiskan ini dalam beberapa cara, saya tertarik untuk mendengar bagaimana hal itu dilakukan.
Anda dapat mengabaikan yang ada di .Net Framework karena biasanya tidak disalin ke output build Anda (biasanya - meskipun tidak selalu benar untuk aplikasi Silverlight).
Beberapa posting tampaknya menjawab pertanyaan: "Bagaimana cara menghapus menggunakan klausa (C #) dari file kode sumber yang tidak diperlukan untuk menyelesaikan referensi apa pun di dalam file itu".
Dalam kasus ini, ReSharper memang membantu dalam beberapa cara:
Mengidentifikasi klausa penggunaan yang tidak digunakan untuk Anda selama deteksi kesalahan dengan cepat. Mereka muncul sebagai Peringatan Pemeriksaan Kode - kode akan tampak abu-abu (menjadi default) di file dan ReSharper akan memberikan Petunjuk untuk menghapusnya:
http://www.jetbrains.com/resharper/features/code_analysis.html#On-the-fly_Error_Detection
Memungkinkan Anda menghapusnya secara otomatis sebagai bagian dari Proses Pembersihan Kode:
http://www.jetbrains.com/resharper/features/code_formatting.html#Optimizing_Namespace_Import_Directives
Terakhir, sadari bahwa ReSharper melakukan analisis kode statis pada solusi Anda. Jadi, jika Anda memiliki referensi dinamis ke assembly - katakanlah melalui refleksi atau assembly yang dimuat secara dinamis saat runtime dan diakses melalui antarmuka - itu tidak akan mengambilnya. Tidak ada pengganti untuk memahami basis kode Anda dan ketergantungan proyek saat Anda mengerjakan proyek Anda. Saya menemukan fitur ReSharper sangat berguna.