Использование компоновщика проектов для совместного использования исходного кода в нескольких проектах
Об улучшенных надстройках
Во-первых, перед инструкциями по применению имеется примечание о надстройке.
Я использую надстройку расширения в Visual Studio 2012, Project Linker 2012, но есть также Project Linker, который имеет почти такую же функциональность, но с разными авторами, а Project Linker отлично работает только в Visual Studio 2010. На этот раз надстройкой, используемой в Visual Studio 2012, будет "Project Linker 2012".
И наоборот, если вы используете Visual Studio 2010, вы можете включить "Project Linker". Я думаю, что вы можете установить его почти так же, как то, что я объясню на этот раз.
Совместное использование исходного кода несколькими проектами
Совместное использование исходного кода между несколькими проектами является стандартным в Visual Studio. Поскольку исходные файлы в основном должны быть размещены под папкой, где находятся файлы проекта, например, если вы перетащите исходные файлы проекта A в проект B, это будет копия файла, которая будет двойным управлением кодом.
Начнем с возможности совместного использования исходного кода в Visual Studio. Проще говоря, это изображение, которое создает ссылку (ярлык) исходного файла. Чтобы создать ссылку на код, выполните следующие действия.
Мы создали проекты под названием Application1 и Application2, где исходные файлы фактически находятся в Application1, а Application2 ссылается на исходные файлы. На рисунке ниже у нас есть файл "ProfileLoader.cs" в Application1, на который ссылается проект Application2.
Щелкните правой кнопкой мыши проект Application2 и выберите Добавить > существующий элемент.
Когда появится диалоговое окно выбора файла, выберите файл "ProfileLoader.cs" в папке "Application1", из которой вы ссылаетесь, нажмите кнопку "▼" справа от правого нижнего края и выберите "Добавить как ссылку".
Файл .cs ProfileLoader добавляется в проект в Приложении2. Это просто ссылка на файл Apllication1 ProfileLoader.cs а не копию. Вы можете видеть, что квадратные значки и значки стрелок были добавлены в правом нижнем углу значка файла.
Если открыть и изменить файл ProfileLoader.cs в Приложении2 в этом состоянии, вы редактируете файл ProfileLoader.cs в Приложении1.
Конечно, файл, на который указывает ссылка, выполняется так же, как и при обычном размещении исходного файла. Поскольку пространство имен остается Application1, можно использовать класс как обычно, указав пространство имен, как показано ниже.
Использование компоновщика проектов для автоматизации совместного использования исходного кода
Если у вас есть только два проекта, совместно использующих исходные файлы, или если у вас есть только несколько файлов для совместного использования, как упоминалось выше, нет проблем с ручным управлением, но если у вас больше проектов или файлов, ручная работа может быть довольно хлопотной. Поскольку количество файлов, которые могут быть совместно использованы одновременно с помощью вышеуказанной операции, составляет одну единицу папки, необходимо выполнить ту же процедуру, если папки являются иерархическими. Кроме того, если требуется изменить иерархию папок, необходимо перенастроить ее во всех проектах.
Эти операции можно автоматизировать с помощью следующего расширения Visual Studio, Project Linker. Обратите внимание, что расширения доступны только в выпусках Visual Studio Professional или более поздних версий.
Загрузите с следующего URL-адреса:
После загрузки файла дважды щелкните его, чтобы запустить. Он находится в формате установщика. Закройте всю Visual Studio перед установкой.
Убедитесь, что установлен флажок Visual Studio, который требуется установить, и нажмите кнопку Установить.
Закройте его после успешной установки.
После завершения установки откройте файл решения с несколькими проектами. В этом случае предположим, что проект "Application1" имеет содержание исходного файла, а "Application2" имеет свою ссылку.
Щелкните правой кнопкой мыши проект, на который нужно сослаться, и выберите Добавить ссылку на проект.
Когда откроется диалоговое окно, выберите реферера для проекта Applicarion1. Как указано в заголовке "Выбор исходного проекта", выберите проект с сущностью исходного файла. После выбора нажмите кнопку ОК.
Когда установлен флажок «Связать все элементы по умолчанию», при нажатии кнопки «ОК» файлы и структура папок Application1 будут синхронизированы с Application2, поэтому, если вы не хотите синхронизироваться внезапно, пожалуйста, снимите этот флажок. И наоборот, если вы хотите синхронизироваться оптом, это удобно проверить.
Если ссылка прошла успешно, нажмите кнопку «ОК».
Application2 связан с Application1, поэтому давайте попробуем добавить класс в Apllication1. После того, как вы создали ссылку для своего проекта, вы в основном выполняете операцию с источником ссылок "Application1".
Щелкните правой кнопкой мыши проект и выберите Добавить - Новый элемент.
Добавьте класс. Классы могут добавлять все, что захотят. Здесь мы создаем класс под названием "StringHelper", чтобы помочь в редактировании строк.
При добавлении исходного файла для файла в проекте Application2 автоматически создается ссылка.
Попробуйте создать папку.
Папка также создается автоматически. Кстати, понятия ссылки в папке нет, поэтому создается физическая папка.
При перемещении файла в только что созданную папку связанное назначение также будет автоматически перемещено таким же образом.
Попробуйте удалить папку и файлы в ней.
Ссылка будет удалена таким же образом. Таким образом, Project Linker позволяет синхронизировать структуры файлов и папок в нескольких проектах.
Если у вас есть несколько связанных проектов, вы можете проверить, в каком состоянии они находятся в настоящее время. В меню выберите Изменить ссылки проекта.
Здесь вы можете просмотреть список ссылок и отсоединить их. Чтобы отсоединить, выберите целевую ссылку из списка и нажмите кнопку «Отменить связь».