Использование одних и тех же модулей в нескольких проектах

Я использую Visual Studio 2010 и кодирования в VB.NET.

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

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

3 ответа

Вы определенно на правильном пути, пытаясь минимизировать дублирование кода! Лучше всего скомпилировать код в библиотеку классов многократного использования, которую вы можете использовать из нескольких проектов.

  1. Создайте новый проект "Библиотека классов" в Visual Studio.

  2. Переместите все свои модули в этот проект.

  3. Скомпилируйте этот проект и запомните местоположение сгенерированного DLL-файла.

  4. Добавьте ссылку на этот файл DLL в каждый из других проектов, для которых вы хотите иметь возможность вызывать методы, предоставляемые вашими модулями.

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

Кроме того, если вы планируете развертывать несколько разных приложений, использующих одни и те же модули, это позволит каждому из них динамически вызывать методы, представленные в составе библиотеки классов.

Решение, предложенное Marcel J. Kloubert, является лучшим. (потому что в настройке вы описали слишком легко, чтобы случайно сломать функциональность.)

Но вы можете сделать то, что вы просили:
1) щелкните правой кнопкой мыши ваш проект
2) выберите Добавить -> Существующий элемент
3) выберите свой файл
4) нажмите на маленькую штуку рядом с надписью Добавить
5) выберите Добавить как ссылку

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

В каждом проекте вы можете добавить ссылку на эту библиотеку, если хотите.

Другие вопросы по тегам