Quelle est exactement la différence entre le HintPath
dans un fichier .csproj et le ReferencePath
dans un .csproj.user
fichier? Nous essayons de nous engager dans une convention où les DLL de dépendance se trouvent dans un repo svn "releases" et tous les projets pointent vers une version particulière. Étant donné que différents développeurs ont des structures de dossiers différentes, les références relatives ne fonctionneront pas, nous avons donc proposé un schéma pour utiliser une variable d'environnement pointant vers le dossier des versions du développeur particulier pour créer une référence absolue. Ainsi, après l'ajout d'une référence, nous éditons manuellement le fichier projet pour changer la référence en un chemin absolu à l'aide de la variable d'environnement.
J'ai remarqué que cela peut être fait à la fois avec le HintPath
et le ReferencePath
, mais la seule différence que j'ai pu trouver entre eux est que cela HintPath
est résolu au moment de la construction et ReferencePath
lorsque le projet est chargé dans l'EDI. Je ne sais pas vraiment quelles en sont les ramifications. J'ai remarqué que VS réécrit parfois le .csproj.user
et je dois le réécrire ReferencePath
, mais je ne suis pas sûr de ce qui le déclenche.
J'ai entendu dire qu'il est préférable de ne pas archiver le .csproj.user
fichier car il est spécifique à l'utilisateur, donc j'aimerais viser cela, mais j'ai également entendu dire que la HintPath
DLL -spécifiée n'est pas "garantie" d'être chargée si la même DLL se trouve par exemple dans le répertoire de sortie du projet. Des pensées à ce sujet?