Saat menambahkan referensi ke sebuah assembly yang terletak di dalam direktori solusi, adakah cara untuk menambahkannya secara relatif, sehingga ketika check in dan out dari repositori itu direferensikan dalam proyek dengan benar?
visual-studio-2008
reference
relative-path
theringostarrs
sumber
sumber
Jawaban:
Untuk memperluas komentar asli Pavel Minaev - GUI untuk Visual Studio mendukung referensi relatif dengan asumsi bahwa .sln Anda adalah root dari referensi relatif. Jadi, jika Anda memiliki solusi
C:\myProj\myProj.sln
, referensi apa pun yang Anda tambahkan di subfolderC:\myProj\
otomatis ditambahkan sebagai referensi relatif.Untuk menambahkan referensi relatif di direktori terpisah, seperti
C:/myReferences/myDLL.dll
, lakukan hal berikut:Edit <HintPath> menjadi sama dengan
<HintPath>..\..\myReferences\myDLL.dll</HintPath>
Ini sekarang referensi
C:\myReferences\myDLL.dll
.Semoga ini membantu.
sumber
Ya, buat saja direktori dalam solusi Anda seperti lib /, lalu tambahkan dll Anda ke direktori itu di sistem file dan tambahkan ke dalam proyek (Add-> Existing Item-> etc). Kemudian tambahkan referensi berdasarkan proyek Anda.
Saya telah melakukan ini beberapa kali di bawah svn dan di bawah cvs.
sumber
Di VS 2017 otomatis. Jadi
Add Reference
seperti biasanya.Perhatikan bahwa di
Reference Properties
jalur absolut ditampilkan, tetapi.vbproj/.csproj
relatif digunakan.sumber
Mungkin, cara termudah untuk mencapai hal ini adalah dengan menambahkan referensi ke assembly dan kemudian (secara manual) menambal representasi tekstual referensi dalam file proyek Visual Studio yang sesuai (ekstensi .csproj) sehingga menjadi relatif.
Saya telah melakukan ini berkali-kali di VS 2005 tanpa masalah.
sumber
Saya mungkin turun di sini, tetapi tampaknya jawabannya cukup jelas: Lihat jalur referensi di properti proyek. Dalam pengaturan kami, saya menambahkan folder repositori umum kami, ke jendela GUI jalur referensi, seperti itu
Dengan cara itu saya dapat menyalin dll saya (siap untuk dipublikasikan) ke folder ini dan setiap pengembang sekarang mendapatkan DLL yang diperbarui setiap kali membangun dari folder ini.
Jika dll ditemukan dalam Solusi, pembuat harus memprioritaskan versi lokal daripada versi tim yang diterbitkan.
sumber
Seperti yang disebutkan sebelumnya, Anda dapat mengedit
.csproj
file proyek Anda secara manual untuk menerapkannya secara manual.Saya juga memperhatikan bahwa Visual Studio 2013 mencoba menerapkan jalur relatif ke jalur petunjuk referensi, mungkin karena upaya untuk membuat file proyek lebih portabel.
sumber