Резюме для программиста
Если что, под добавлением файла как ссылки я имею ввиду файл с исходным кодом (например .cs), не уже скомпиленную ДЛЛку. Этой ДЛЛки может просто не быть - исходник не скомпилен, а лишь подключен по ссылке. Если же при подключении по ссылке там под капотом делается куча операций, типа компиляции и подключения ДЛЛек, то это бред какой-то - проще уже весь проект с исходником или саму ДЛЛку подключить - нафига нужна новая сущность "добавить файл как ссылку"?
А закомпилить один лишь файл, без всех остальных файлов проекта, не всегда можно - может, у него зависимости от других файлов (классво) проекта? Тогда надо по цепочке подключить и всё остальное. Тогда проще весь проект подключить.
Короче, вся эта линковка - это какой-то бред. По крайней мере по отношению к файлам кода, которые должны компилиться. Уже существует механизм расшаривания файлов кода через подключение проектов и ДЛЛек, нахрена городить третий механизм и потом трахаться с добавлением залинкованных файлов в систему контроля версий и прочие. Может, для некомпилируемых файлов, типа ресурсов каких, это лучше подходит. Но и ресурсы тоже через подключение проектов и ДЛЛек шарятся.