Jaka jest dokładnie różnica między HintPathw pliku .csproj a ReferencePathw .csproj.userpliku? Staramy się przestrzegać konwencji, w której biblioteki DLL zależności znajdują się w repozytorium svn „wydań”, a wszystkie projekty wskazują na określone wydanie. Ponieważ różni programiści mają różne struktury folderów, odniesienia względne nie będą działać, więc wymyśliliśmy schemat użycia zmiennej środowiskowej wskazującej na folder wydań konkretnego programisty, aby utworzyć odniesienie bezwzględne. Dlatego po dodaniu odwołania ręcznie edytujemy plik projektu, aby zmienić odwołanie na ścieżkę bezwzględną za pomocą zmiennej środowiskowej.
Zauważyłem, że można to zrobić za pomocą obu HintPathi ReferencePath, ale jedyną różnicą, jaką mogłem znaleźć między nimi, jest to, że HintPathjest to rozwiązywane w czasie kompilacji i ReferencePathkiedy projekt jest ładowany do IDE. Nie jestem jednak pewien, jakie są tego konsekwencje. Zauważyłem, że VS czasami przepisuje .csproj.useri muszę przepisać ReferencePath, ale nie jestem pewien, co to powoduje.
Słyszałem, że najlepiej nie wpisywać .csproj.userpliku, ponieważ jest on specyficzny dla użytkownika, więc chciałbym dążyć do tego, ale słyszałem też, że HintPathokreślona biblioteka DLL nie jest „gwarantowana” do załadowania, jeśli ta sama biblioteka DLL znajduje się np. w katalogu wyjściowym projektu. Jakieś przemyślenia na ten temat?