Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Common Files in Visual Studio Solution

Many times I have seen Visual Studio solutions which have multiple projects that share source files. These common source files are usually out in a common directory and in the solution explorer their icon shows up with a link arrow in the bottom left.

However, any time I try to add a source file to the project that is outside of that project's main directory, it just automatically copies it into the directory so that I no longer have a shared copy.

I found that I can get around this by manually opening the project file in a text editor and modifying the path to something like "../../../Common/Source.cs" but this is more of a hack then I would like.

Is there a setting or something I can change that will allow me to do this from within the IDE?

like image 520
Adam Haile Avatar asked Sep 05 '08 12:09

Adam Haile


2 Answers

Right click on a project, select Add->Existing Item->Add as link (press on small arrow on Add button)

like image 73
aku Avatar answered Sep 20 '22 09:09

aku


Thanks @aku!

I knew this could be done, but I didn't know how to do this from Visual Studio. It shows up as a shortcut to the file and the csproj file generates the resulting XML like this:

<Compile Include="..\CommonAssemblyInfo.cs">
  <Link>CommonAssemblyInfo.cs</Link>
</Compile>

I've seen this technique commonly used for common AssemblyInfo files to keep a consistent version.

like image 36
David Mohundro Avatar answered Sep 23 '22 09:09

David Mohundro