2014-09-16 4 views
0

Я поддерживаю решение C#, состоящее из нескольких проектов. Обычно нет проблем с изменением какого-либо проекта, кроме проекта z, который упоминается в нескольких других проектах в решении, а также в проекте a и b.Лучшая практика для решения нескольких проектов C#

Project a использует основной графический интерфейс, тогда как проецировать b и z упоминаются в проекте a. Когда проект z изменен и построен, я получаю несоответствие версии.

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

Я устал от ручной корректировки проблемы с ручной копией проекта z вывод на b и a.

Я думаю, что это tossup, позволяющий отлаживать или нет. Обычно мне не нужна отладка по проекту z, и поэтому я использую ссылку на z's любую сборку релиза ЦП во многих местах.

Любые предложения по улучшению этого?

ответ

2

Проблема в том, что вы ссылаетесь на определенную версию dll, и когда вы обновляете dll с новой версией, версия не соответствует.

Лучший способ решить эту проблему - напрямую ссылаться на проекты b и z.

Удалите существующие ссылки из проекта a и добавьте новые ссылки.

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

Механизм сборки автоматически скопирует соответствующие DLL для вас.

+0

, так что я могу удалить скрипт пост-сборки для проектов b и z? и использовать ссылки на проекты для b и z в проекте, а также проект ref для z в проекте B? btw project b строит отдельный exe с собственным gui – gg89

+0

Да, вы можете это сделать. Visual Studio может управлять всем этим для вас. –

Смежные вопросы