Quelle est la différence exacte entre le HintPath
dans un fichier .csproj et l'option ReferencePath
dans un .csproj.user
fichier ? Nous essayons de nous engager dans une convention où les DLLs de dépendance sont dans un repo svn "releases" et tous les projets pointent vers une version particulière. Étant donné que les développeurs ont des structures de dossiers différentes, les références relatives ne fonctionnent pas. Nous avons donc trouvé un moyen d'utiliser une variable d'environnement pointant vers le dossier releases du développeur en question pour créer une référence absolue. Ainsi, après l'ajout d'une référence, nous modifions manuellement le fichier du 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 la fonction HintPath
y el ReferencePath
mais la seule différence que j'ai pu trouver entre eux est que HintPath
est résolu au moment de la construction et ReferencePath
lorsque le projet est chargé dans l'IDE. Je ne suis pas vraiment sûr des ramifications de cela. J'ai remarqué que VS réécrit parfois les fichiers de type .csproj.user
et je dois réécrire le ReferencePath
mais je ne suis pas sûr de ce qui déclenche ça.
J'ai entendu dire que c'est mieux de ne pas vérifier dans le .csproj.user
puisqu'il est spécifique à l'utilisateur, et j'aimerais donc viser cet objectif, mais j'ai également entendu dire que le fichier HintPath
-Il n'est pas "garanti" que la DLL spécifiée sera chargée si la même DLL se trouve, par exemple, dans le répertoire de sortie du projet. Avez-vous des idées à ce sujet ?