Обновление классов используется в нескольких проектах? - PullRequest
4 голосов
/ 23 ноября 2011

У меня есть несколько классов, которые абстрагированы таким образом, что я могу использовать их в нескольких проектах.Я всегда работаю над этими классами, оптимизируя, добавляя и т. Д. Поэтому, когда я что-то оптимизирую в одном из этих классов, мне нужно скопировать эту новую версию в каждый проект, который я помню, используя его.Это не очень хороший способ сделать это, но есть ли лучший способ?

Спасибо

Ответы [ 5 ]

5 голосов
/ 23 ноября 2011

Поместите эти базовые классы в один проект и поделитесь этим проектом между вашими различными решениями в качестве библиотеки классов, на которую ссылаются.Таким образом, вам не придется ничего копировать / вставлять между проектами или решениями, и все должно быть всегда актуально.

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

2 голосов
/ 23 ноября 2011

Вместо того, чтобы вручную копировать обновленные классы в каждый проект, который их использует, создайте проект Библиотека классов и ссылайтесь на скомпилированный файл в каждом проекте, который использует классы. Организация ваших классов Это поможет вам следовать принципу СУХОЙ («Не повторяйся»).


Если вам нужно для ссылки на файлы, а не на скомпилированные библиотеки, вы можете ссылаться на файл как на ссылку, чтобы несколько проектов ссылались на один и тот же файл, не копируя его в каждую папку решения. Для этого щелкните правой кнопкой мыши свой проект, выберите Добавить существующий элемент ... , перейдите к файлу .cs и выберите Добавить как ссылку в выпадающем списке справа нижний угол.

1 голос
/ 23 ноября 2011

Это плохая идея, чтобы скопировать файл вставки во всем приложении.Чтобы избежать этих повторений, вы можете:

  1. сделать ссылку, если объем файла действительно небольшой.В браузере решений Visual Studio щелкните правой кнопкой мыши, Добавить существующий файл , выберите свой файл и в кнопке разделения выберите Добавить в качестве ссылки
  2. создать отдельный проект и ссылаться на этот проект там, где это необходимо, если количество файлов не крошечное.
1 голос
/ 23 ноября 2011

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

0 голосов
/ 23 ноября 2011

Создайте base-lib и создайте его в «общем» месте. Добавьте ссылку на него в свой проект. Это будет держать другие проекты меньше и будет быстрее строить.

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