Що ж являє собою різницю між HintPath
в файлі .csproj і ReferencePath
в .csproj.user
файлі? Ми намагаємося взяти на себе конвенцію, де DLL-файли залежності знаходяться у репозиторії svn repo та всі проекти вказують на певний випуск. Оскільки різні розробники мають різні структури папок, відносні посилання не працюватимуть, тому ми створили схему використання змінної середовища, яка вказує на папку випусків конкретного розробника для створення абсолютної посилання. Тож після додавання посилання ми вручну редагуємо файл проекту, щоб змінити посилання на абсолютний шлях за допомогою змінної середовища.
Я помітив, що це можна зробити як з, так HintPath
і з ReferencePath
, але єдина різниця, яку я можу знайти між ними, полягає в тому, що HintPath
це вирішується під час збирання і ReferencePath
коли проект завантажується в IDE. Я не дуже впевнений, які наслідки цього є. Я помітив, що VS іноді переписує .csproj.user
і мені доводиться переписувати ReferencePath
, але я не впевнений, що викликає це.
Я чув, що найкраще не перевіряти .csproj.user
файл, оскільки він є специфічним для користувача, тому я хотів би прагнути до цього, але також чув, що HintPath
DLL-специфіку не гарантовано завантажується, якщо та сама DLL знаходиться, наприклад, у вихідному каталозі проекту. Будь-які думки з цього приводу?