До сих пор я использовал/практиковал Visual Studio (VS) для создания, компиляции и развертывания решений с помощью одного проекта. Это довольно прямолинейно, по крайней мере, для меня. Вы просто заходите в папку .. \ bin \ release и запишите все файлы там, где также есть все зависимости.Как создать и развернуть визуальное студийное решение с несколькими проектами
Теперь я получаю решения с несколькими проектами. У меня есть проект службы Windows со следующим решением.
Раствор-ServiceXYZ
- ServiceXYZ (EXE)
- Проект1 (DLL)
- Проект2 (DLL)
- Project3 (DLL)
- Log4Net
Я установите ServiceXYZ в качестве запуска. Он также ссылается на проекты с 1 по 3, каждый из которых также ссылается на внешнюю DLL. Путь сборки в каждом проекте - \ bin \ Release.
Каков наилучший способ создания и развертывания этого окна? После того, как я построю решение, мне нужно вручную скопировать каждую DLL из каждого проекта и EXE из проекта службы в папку и закрепить его? Я предполагаю, что я могу установить путь сборки в каждом проекте к общей папке, но это кажется неправильным.
В папке ServiceXYZ \ bin \ release есть все зависимости, EXE-файл, включая app.config и serviceXYZ.exe.config. Это потому, что этот проект является проектом запуска? Кроме того, я хочу только serviceXYZ.exe.config, а не app.config, потому что это может смутить пользователей. Наверное, мне не нужно копировать его для развертывания.
Добавить log4net в этот микс, и теперь я тяну свои волосы относительно того, где находится файл журнала, и где должен находиться log4net.config.
Каков наилучший способ установить выходной каталог для всего решения, чтобы все DDL, EXE и log4net.config и mylog.log были в одном месте?
Благодаря
Кажется, мне все еще нужно вручную скопировать библиотеки DLL для проектов 1,2 и 3 (DLL из самих проектов и их зависимостей) выше в моих примерах в выходной каталог. Я прав? Где выходной каталог? Это папка bin \ Release проекта EXE? – hexterminator
@hexterminator Отредактировал мой ответ.Затем я попытался добавить еще один проект в существующий проект, применяя шаги, упомянутые в ответе для обоих проектов, они построены в том же каталоге вывода. – DhavalR