Sự khác biệt chính xác giữa HintPathtệp .csproj và tệp ReferencePathtrong .csproj.usertệp là gì? Chúng tôi đang cố gắng cam kết một quy ước trong đó các DLL phụ thuộc nằm trong repo svn "phát hành" và tất cả các dự án đều trỏ đến một bản phát hành cụ thể. Vì các nhà phát triển khác nhau có cấu trúc thư mục khác nhau, các tham chiếu tương đối sẽ không hoạt động, vì vậy chúng tôi đã đưa ra một kế hoạch sử dụng một biến môi trường trỏ đến thư mục bản phát hành của nhà phát triển cụ thể để tạo một tham chiếu tuyệt đối. Vì vậy, sau khi một tham chiếu được thêm vào, chúng tôi chỉnh sửa thủ công tệp dự án để thay đổi tham chiếu thành một đường dẫn tuyệt đối bằng cách sử dụng biến môi trường.
Tôi nhận thấy rằng điều này có thể được thực hiện với cả cái HintPathvà ReferencePath, nhưng sự khác biệt duy nhất tôi có thể tìm thấy giữa chúng là HintPathđược giải quyết tại thời điểm xây dựng và ReferencePathkhi dự án được tải vào IDE. Tuy nhiên, tôi không thực sự chắc chắn về sự phân nhánh của điều đó. Tôi đã nhận thấy rằng VS đôi khi viết lại .csproj.uservà tôi phải viết lại ReferencePath, nhưng tôi không chắc điều gì gây ra điều đó.
Tôi đã nghe nói rằng tốt nhất là không nên kiểm tra .csproj.usertệp vì nó dành riêng cho người dùng, vì vậy tôi muốn nhắm đến điều đó, nhưng tôi cũng nghe nói rằng HintPathtệp DLL được chỉ định không "đảm bảo" được tải nếu DLL tương tự được đặt trong thư mục đầu ra của dự án. Bất kỳ suy nghĩ về điều này?