Visual Studio SourceShare is a Visual Studio extension that allows you to reuse the files of one Visual Studio project in other projects. This is similar to adding a reference to this project from the other projects, but is fundamentally different. When you add a reference to a project/assembly using the default Visual Studio functionality, you actually reuse the compiled output of the project, not the source files. This is not a bad thing but is sometimes not applicable and in those cases leads to inability to reuse your code. With SourceShare you reuse directly the source files, not the resulting assembly.
How does it work?
When you link (reference) two projects with Visual Studio SourceShare, all files and folders from the source project are automatically created in the target project. The files are not copied to the target project but are added as links to the original files. This way your files physically exist only in one place and when you want to change something you only need to do it once. Any change to the source project is automatically handled by SourceShare and reflected in the target project. This way you work with the target project as if it really contained the source files you need to reuse and at the same time those files are compiled with the framework of the target project.
When is SourceShare useful?
Visual Studio SourceShare is especially useful when you want to reuse files between projects targeted to different platforms. For example, you might want to use some classes/files in: Silverlight projects, Compact Framework projects, Windows Applications. This is almost impossible without SourceShare.
Normally, when you want to reuse some files, you add a reference to the assembly/project that contains them. This is not possible when the project you want to use the files from is targeted to a different framework. If you try to do that you get an error message saying: “You can only add project references to other XXX projects in the solution” or something similar. This is where SourceShare is most useful – using it you can reference the source files directly, not the assembly they are compiled in.
The main purpose of SourceShare is to make possible reusing code files (.cs, .vb, etc.), but it also works for other project files – images, class diagrams, etc.
How is SourceShare licensed?
SourceShare is offered in two editions – Basic and Professional. The Basic edition is free while the Professional is not. You can compare edition features and parameters here. You can evaluate the Professional version 30 days for free.
As you might guess, the Professional edition is more advanced and has more features. However, you should know that the Basic version is fully usable and is probably better than anything you could achieve without Visual Studio SourceShare.
LIMITED OFFER: Free permanent SourceShare Pro licenses. [more info]
Where can I learn more?
First of all, you can browse the Features and the FAQ pages to get some useful info. Also, to see SourceShare in action, you might want to browse our video tutorials. Finally, if you have any questions, you can always contact us.