.dll hilang setelah solusi pembangunan kembali/pembangunan bersih

Saya memiliki 3 proyek dalam solusi saya dan banyak pihak ketiga atau dll perusahaan. Setiap kali saya membangun kembali proyek atau solusi bersih saya, banyak dll yang terhapus, sehingga hilang. Sangat menjengkelkan untuk mereferensikan file dll ini berulang kali setelah pembangunan kembali. Adakah yang bisa menjelaskan cara menghindari hal ini? Terima kasih sebelumnya.


person Shukhrat Raimov    schedule 24.09.2014    source sumber
comment
Anda telah mereferensikannya dalam proyek Anda dan masih saja hilang? atau Anda baru saja menyalin file dll ke direktori keluaran?   -  person Habib    schedule 24.09.2014
comment
Juga di menu properti (di perancang) untuk referensi apakah mereka memiliki salinan lokal (itu bisa menjadi alasan mengapa mereka tidak ada di folder jika tidak disetel)   -  person Thomas    schedule 24.09.2014
comment
@Habib Saya membuat folder bin di folder root, dan menyalin semua dll di sana, lalu mereferensikannya dari folder ini dengan referensi-tambah referensi.   -  person Shukhrat Raimov    schedule 24.09.2014
comment
@ShukhratRaimov, seharusnya sudah ada folder bin di folder root proyek Anda   -  person Habib    schedule 24.09.2014
comment
@Habib oh maaf sudah ada sebelumnya, tapi tidak ada file dll saya. Juga setiap proyek saya memiliki folder bin, tetapi saya menambahkan referensi dll dari root bin saya. Saya cukup bingung mengapa ada begitu banyak folder bin dan bagaimana referensi ini dibuat dan mengapa folder tersebut dibuang setelah setiap pembangunan kembali.   -  person Shukhrat Raimov    schedule 24.09.2014
comment
@Habib beberapa folder bin memiliki debug/rilis sementara yang lain hanya memiliki file dll.   -  person Shukhrat Raimov    schedule 24.09.2014
comment
Solusi bersih akan menghapus semua biner di folder bin. Anda perlu merujuknya dari lokasi sebenarnya, setiap build akan selalu menyalinnya dari ke bin jika itu adalah folder target biner   -  person Mrinal Kamboj    schedule 24.09.2014


Jawaban (2)


Folder bin hanyalah keluaran biner dari sebuah build, jadi saat Anda membersihkan solusi Anda, semua rakitan di folder bin akan terhapus. Anda harus mereferensikan majelis dari beberapa lokasi lain. Salah satu sarannya adalah membuat folder Shared Resources dalam proyek Anda, salin rakitan Anda ke folder itu, lalu rujuk dari folder itu. Dengan cara ini mereka tidak akan terhapus dari bin saat pembersihan/pembangunan ulang dan Visual Studio akan menyalinnya ke sana sesuai kebutuhan.

  1. Klik kanan pada folder References di proyek Anda dan pilih Add Reference...
  2. Gunakan fungsionalitas jelajah untuk menemukan rakitan yang ingin Anda referensikan (jangan khawatir menyalinnya secara manual ke/dari folder bin Anda)
  3. Setelah referensi ditambahkan, klik kanan referensi di daftar referensi Anda dan pilih Properties
  4. Pastikan properti Copy Local disetel ke True

Ini akan memastikan bahwa Majelis disalin ke folder bin Anda di setiap build.

person Troy Carlson    schedule 24.09.2014
comment
Terima kasih atas jawabannya. Jadi sebenarnya ketika saya membersihkan/membangun kembali subproyek saya, maka folder bin dalam subproyek ini akan dikosongkan. Jika saya membangun kembali seluruh solusi, apakah folder bin di root akan dihapus atau setiap folder bin dalam sub-proyek akan dikosongkan? - person Shukhrat Raimov; 24.09.2014
comment
Saat Anda membersihkan proyek, folder bin dikosongkan untuk proyek tersebut. Tidak ada folder bin di tingkat solusi, jadi ketika Anda membersihkan solusi, folder bin akan kosong untuk semua proyek dalam solusi tersebut. Saya pikir Visual Studio memiliki beberapa aturan khusus untuk file/folder mana yang terhapus saat melakukan pembersihan sehingga mungkin ada file yang tersisa setelahnya. Tetapi yang penting adalah folder bin adalah keluaran dari suatu build dan Anda tidak ingin menyalin/merujuk rakitan Anda secara manual dari sana... - person Troy Carlson; 24.09.2014

Dalam kasus saya, versi .net framework adalah masalahnya. Saya harus menurunkan versinya menjadi 4.5 dan kemudian proyek tersebut dibangun dengan benar dan dapat menjadi referensi di proyek lain

person Jyothi.T    schedule 22.04.2021