HintPath против ReferencePath в Visual Studio
В чем именно разница междуHintPath
в файле .csproj иReferencePath
в.csproj.user
файл? Мы пытаемся придерживаться соглашения, в котором библиотеки зависимостей находятся в репозитории svn «релизы», и все проекты указывают на конкретный выпуск. Поскольку разные разработчики имеют разные структуры папок, относительные ссылки не будут работать, поэтому мы придумали схему использования переменной среды, указывающей на папку выпусков конкретного разработчика, для создания абсолютной ссылки. Поэтому после добавления ссылки мы вручную редактируем файл проекта, чтобы изменить ссылку на абсолютный путь, используя переменную среды.
Я заметил, что это может быть сделано как сHintPath
иReferencePath
, но единственное различие, которое я мог найти между ними, состоит в том, чтоHintPath
разрешается во время сборки иReferencePath
когда проект загружен в IDE. Я не совсем уверен, каковы последствия этого, хотя. Я заметил, что VS иногда переписывает.csproj.user
и я должен переписатьReferencePath
, но я не уверен, что это вызывает.
Я слышал, что лучше не проверять в.csproj.user
файл, поскольку он зависит от пользователя, поэтому я хотел бы стремиться к этому, но я также слышал, чтоHintPath
указанная DLL не «гарантированно» загружается, если одна и та же DLL, например, находится в выходном каталоге проекта. Есть мысли по этому поводу?