У меня есть решение Visual Studio 2010, которое настроено на отладку x86.Поэтому Visual Studio устанавливает выходной путь \ bin \ x86 \ Debug, что кажется достаточно логичным.
Решение содержит около 50 проектов;стартовый проект - это проект WCF.
Когда я делаю сборку, я ожидаю, что все выходные dll перейдут в \ bin \ x86 \ Debug, как это установлено в настройках проекта.Но странно, я вижу, что dll создаются в bin \ x86 \ Debug и в \ bin.Зачем Visual Studio помещать какие-либо dll в \ bin, если путь вывода не установлен для этого каталога?Кажется, что все dll идут в \ bin \ x86 \ Debug, а все dll , за исключением запускаемого проекта , идут в \ bin.Есть идеи, почему это так?(У нас есть другие решения, которые не используют WCF, и у них нет этой проблемы.)
Другая неприятность заключается в том, что я запускаю службу из Visual Studio и затем пытаюсь получить доступ к моей службе в Интернете.в браузере, перейдя на http://localhost:1240/MyService.svc,, он не работает, потому что в / bin отсутствует стартовый проект dll.Поэтому мне нужно вручную скопировать эту одну DLL из \ bin \ x86 \ Debug в \ bin, чтобы все dll были найдены и служба работала нормально.(Конечно, мы могли бы добавить пользовательский шаг после сборки, который выполняет копирование, но вы могли бы подумать, что будет лучший способ!)
Для тех из вас, кто работает над проектами WCF, вы оставляетевыходной путь в \ bin \ x86 \ Debug?(Возможно, есть способ настроить службу, например, в файле web.config или .svc, чтобы он знал, что двоичные файлы находятся в \ bin \ x86 \ Debug вместо \ bin?) Или вы измените путь вывода на\ bin, чтобы вы могли запустить свой сервис прямо из Visual Studio?