Лучший способ сослаться на внешнюю библиотеку в нескольких проектах в решении для Visual Studio

У нас есть решение для Visual Studio 2008 года при управлении исходным кодом VSS. Решение содержит много библиотек классов, многим из которых нужна ссылка на блок, который не является частью решения. В настоящее время мы разделяем копии того блока в каждом проекте, но поскольку количество проектов растет, это становится все больше утомительным для копирования в обновлениях внешнего блока. Существует ли лучший способ иметь единственную копию блока в решении, и в управлении исходным кодом, на которое можно затем сослаться во всех проектах?

5
задан Rob West 15 May 2009 в 12:39
поделиться

3 ответа

Создайте папку «внешние библиотеки» / «lib» / «библиотеки» в корневой папке, добавьте ее в систему управления версиями и справочные библиотеки в проектах оттуда. С «Копировать локальное» в свойствах ссылки проект автоматически скопирует его в свою папку bin.

Структура нашего проекта:

workspace
  config
    partial app configs goes here
  lib
    external libraries goes here
  src
    Domain          
      domainProjects
    Infrastructure
      infrastructureProjects
        references 3rd party dll's from lib folder
    UI
    Tests        
  solutions
    primaryUIapplication
      references projects from "src" folder
    domainLogic
    etc.

В решении это выглядит так:

_misc
  config
  tests
Domain
Infrastructure
UI    
5
ответ дан 14 December 2019 в 08:59
поделиться

У Арниса Л. есть ответ, но мне интересно, почему так много ваших проектов имеют одинаковую зависимость? Если вы реструктурируете свои проекты так, чтобы только один из них имел эту зависимость, было бы легче управлять.

1
ответ дан 14 December 2019 в 08:59
поделиться

Вот VSS во всей его «красе» со всей «частью решения».

Вернуться к теме: не особо уверен, но сначала добавьте lib в структуру каталогов, добавьте ее в систему управления версиями, а затем попробуйте добавить папку решения в свое решение, где вы будете выполнять команду «Добавить существующий элемент» для каждой сторонней сборки.

1
ответ дан 14 December 2019 в 08:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: