HintPath sur un ajout d'une référence dans Visual Studio
Je sais que je peux ajouter un HintPath à une Dll externe à l'aide de Visual Studio/TFS trouver la dll lorsqu'il crée.
Ce que je me demandais, c'est... est-il possible d'ajouter plusieurs HintPath?
Par exemple... les développeurs ont leurs Dll pour un endroit et nous faire un GetLatest de ces Dll à un endroit différent sur le serveur d'où la nécessité pour les multiples HintPath.
Qu'en pensez-vous, monde?
Vous devez vous connecter pour publier un commentaire.
Désolé, vous ne peut pas utiliser plusieurs HintPath de l'. Visual Studio/MSBuild ne prend que le dernier
<HintPath>
définition et ignore toutes les précédentes. Confirmé dans VS2010 et VS2012.Cette réponse n'est plus valide. Comme Sardaukar commentaire dit, Visual Studio toujours aveuglément utilise la dernière HintPath. Alex réponse prend en charge cette.
Bien. Je suis plus rapide que Stackoverflow cette fois. J'ai essayé de l'ajouter et il semble bien fonctionner.
De sorte que plusieurs HintPath EST possible.
Lorsque vous avez ceci:
Vous pouvez simplement ajouter plus d'indicateur de chemin comme ça:
Vous pouvez utiliser des variables d'environnement pour que. E. g.
L'aide d'État que vous pouvez:
La dernière HintPath où la Condition est évaluée à true sera utilisé.
Ajouter le texte suivant à la fin de votre fichier de projet juste après le commentaire sur les objectifs de la section:
Remplacement
YOUR_FIRST_PATH
etYOUR_SECOND_PATH
avec vos chemins d'accès.Il est important que cela se passe après la ligne suivante ou votre réglage sera remplacée:
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
Avec le
$(AssemblySearchPaths)
entrée à la fin de la chaîne de Dll dans vos chemins de remplacer la résolution normale. Si vous la déplacez vers le début de la résolution normale est essayé en premier, et les autres chemins sont vérifiées pour tout ce qui n'était pas trouvé. La résolution normale comprend<HintPath>
sections, donc il n'est pas nécessaire de les enlever si vos chemins d'accès viennent d'abord.