Как объединить два разных решения Visual Studio?

У меня есть два решения Visual Studio 2005, одно из которых создает двоичный файл и все его зависимости, а другое создает веб-приложение, некоторые утилиты и установщик для них. До сих пор вышеупомянутый двоичный файл был включен в программу установки как статический файл; Я хочу взять все проекты из этого двоичного решения и сделать их частью решения установщика для единой сквозной сборки всего.

Насколько я могу судить, я не могу добавить существующие проекты из бинарного решения без потери информации о зависимостях. Это сработает, но поскольку в проекте задействовано 20 проектов, я хочу сохранить информацию о зависимостях при перемещении проектов. Похоже, мне, возможно, придется сделать это в текстовом редакторе с помощью XML решения ... есть ли лучший вариант? способ?

Обратите внимание, что это НЕ то же самое, что и связанные вопросы об объединении двух версий одного и того же файла решения.


person UltraNurd    schedule 02.03.2009    source источник
comment
Если у вашего установщика есть только или два проекта, вы можете рассмотреть возможность добавления этих проектов в двоичное решение.   -  person dirkgently    schedule 02.03.2009


Ответы (4)


В Visual Studio есть способ сделать это. Щелкните решение правой кнопкой мыши и выберите «Добавить - существующий проект». Выберите оттуда другое решение.

person Sander Rijken    schedule 02.03.2009
comment
Спасибо, это то, что я искал. Я не думал, что это сработает, так как он называется Existing Project и не показывает файлы решений, но вам просто нужно изменить поле Files of type на Solution files из All project files. - person UltraNurd; 03.03.2009
comment
Есть ли обходной путь, если добавляемый проект имеет то же имя, что и текущий открытый проект? - person Aditya; 18.01.2017
comment
@Aditya, возможно, вы можете отредактировать файл .SLN и глобально заменить каждое имя проекта другим (и уникальным), но вам придется переименовать файлы проекта на диске, чтобы они соответствовали. - person Francis Litterio; 28.10.2019

Если вы хотите автоматизировать процесс, вы можете попробовать поиграть с этим инструментом.

http://code.google.com/p/merge-solutions/

person bushed    schedule 23.02.2011

Возможно, вы захотите рассмотреть возможность использования ссылок вместо зависимостей. Они хранятся в файле проекта и, следовательно, сохраняются во всех решениях. Может быть что-то, что можно сделать с зависимостями, а не со ссылками, однако я не знаю ни одной такой ситуации, и для простого использования ссылок более чем достаточно.

person EFraim    schedule 02.03.2009

Попробуйте выбрать все узлы проекта в дереве, а затем перетащите их в другое решение.

person flodin    schedule 02.03.2009
comment
Это было первое, что я попробовал, он просто дает мне курсор в виде перечеркнутого круга, который нельзя перетащить. - person UltraNurd; 03.03.2009