Currently, if you add a reference to a project that is outside the folder structure of the current solution, but on the same drive, you will get a relative path in the HintPath of the .csproj file. The only problem we have with this, is that the reference will be to a DLLat an exact location, so switching between debug and release build will still reference the same DLL.
I've found that you can edit the HintPath in the .csproj file to use the expansion $(Configuration) and the referencing project will use the appropriate version of the DLL. So for example I change:
<HintPath>..\..\..\Solution1\ClassLibrary1\ClassLibrary1\bin\Debug\Project1.dll</HintPath>
to
<HintPath>..\..\..\Solution1\ClassLibrary1\ClassLibrary1\bin\$(Configuration)\Project1.dll</HintPath>
My question is, is it safe to do this. Since references cannot be edited in the gui, (only added or removed) it would seem to me that this is safe, especially now that this .csproj files are effectively the make files for msbuild.
Any official opinion on whether this is appropriate or not

Editing project references in visual studio 2005 project files
Darren Neimke
Tr&#7847;n Ng&#7885;c V&#259;n
Project references were created for the same problem you are trying to solve.
GeuS
There are other ways we can make this work, including copying DLL's from other solutions to a local lib directory using pre-build macros, but this is cumbersome slow since XCopy does not seem to work under VS2005.
What I'm looking for, is whether their is a risk in doing what I propose, not if there is a different way of doing it.
minhhoang
Bassim Matuk
-Thanks,
Prasadi