Quelle est exactement la différence entre le HintPathdans un fichier .csproj et le ReferencePathdans un .csproj.userfichier? 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 HintPathet le ReferencePath, mais la seule différence que j'ai pu trouver entre eux est que cela HintPathest résolu au moment de la construction et ReferencePathlorsque 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.useret 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.userfichier car il est spécifique à l'utilisateur, donc j'aimerais viser cela, mais j'ai également entendu dire que la HintPathDLL -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?