Qual è esattamente la differenza tra HintPath
in un file .csproj e ReferencePath
in un .csproj.user
file? Stiamo cercando di impegnarci in una convenzione in cui le DLL delle dipendenze sono in un repository svn "rilasci" e tutti i progetti puntano a una particolare versione. Poiché diversi sviluppatori hanno strutture di cartelle diverse, i riferimenti relativi non funzioneranno, quindi abbiamo escogitato uno schema per utilizzare una variabile di ambiente che punta alla cartella delle versioni dello sviluppatore particolare per creare un riferimento assoluto. Quindi, dopo aver aggiunto un riferimento, modifichiamo manualmente il file di progetto per cambiare il riferimento a un percorso assoluto utilizzando la variabile di ambiente.
Ho notato che questo può essere fatto sia con il HintPath
che con il ReferencePath
, ma l'unica differenza che ho trovato tra loro è che HintPath
viene risolto in fase di compilazione e ReferencePath
quando il progetto viene caricato nell'IDE. Non sono davvero sicuro di quali siano le conseguenze di ciò. Ho notato che VS a volte riscrive il .csproj.user
e devo riscrivere il ReferencePath
, ma non sono sicuro di cosa lo attivi.
Ho sentito che è meglio non .csproj.user
archiviare il file poiché è specifico dell'utente, quindi mi piacerebbe mirare a quello, ma ho anche sentito che la HintPath
DLL specificata non è "garantita" per essere caricata se la stessa DLL si trova ad esempio nella directory di output del progetto. Qualche idea su questo?