Mam rozwiązanie Visual Studio 2010, które jest ustawione do kompilacji Debugowania x86. Dlatego Visual Studio ustawia ścieżkę wyjściową do \ bin \ x86 \ Debug, co wydaje się logiczne.Katalog wyjściowy podczas budowania projektu WCF w Visual Studio
Rozwiązanie zawiera około 50 projektów; projekt start-up jest projektem WCF.
Kiedy robię kompilację, oczekiwałbym, że wszystkie pliki wyjściowe dll pójdą do \ bin \ x86 \ Debug, ponieważ jest to ustawione w ustawieniach projektu. Ale dziwne, widzę biblioteki dll są tworzone w bin \ x86 \ Debug i w \ bin. Dlaczego Visual Studio umieściłby dll w \ bin, jeśli ścieżka wyjściowa nie jest ustawiona w tym katalogu? Wydaje się, że wszystkie biblioteki DLL idą do \ bin \ x86 \ Debug, a wszystkie biblioteki DLL z wyjątkiem projektu startowego idą do \ bin. Masz pomysł, dlaczego to zrobi? (Mamy inne rozwiązania, które nie używają WCF i nie mają tego problemu).
Inną irytacją jest to, że uruchomię usługę z Visual Studio, a następnie spróbuję uzyskać dostęp do mojej usługi w przeglądarce internetowej, przechodząc do http://localhost:1240/MyService.svc, to nie działa, ponieważ dll projektu start-up nie ma w/bin. Dlatego muszę ręcznie skopiować ten jeden plik dll z \ bin \ x86 \ Debug do \ bin, tak aby wszystkie biblioteki dll zostały odnalezione, a usługa działa normalnie. (Możemy oczywiście dodać niestandardowy krok post-build, który wykonuje kopię, ale można by pomyśleć, że będzie lepszy sposób!)
Czy dla tych, którzy pracują nad projektami WCF, opuszczacie ścieżkę wyjściową w \ bin \ x86 \ Debugowanie? (Być może istnieje sposób na skonfigurowanie usługi, np. W pliku web.config lub .svc, aby wiedział, że pliki binarne znajdują się w \ bin \ x86 \ Debug zamiast \ bin?) Czy zmieniasz ścieżkę wyjściową do \ bin, abyś mógł uruchomić swoją usługę prosto z Visual Studio?
Tak, to pole tekstowe jest "ścieżką wyjściową", o której mówię w moim poście. Więc mówisz, że po prostu ustawiłeś to na bin, koniec historii. Wydaje się dziwne, że jeśli zmienisz tę ścieżkę wyjściową, większość plików nadal będzie trafiać do kosza, czyż nie? – Justin
Dla domyślnej ścieżki wyjściowej projektu poza WCF wskazuje folder bin \\ [BuildConfiguration]. Ponieważ usługa WCF chce, aby biblioteka dll była obecna w katalogu bin, a nie w żadnym podkatalogu, domyślną konfiguracją projektu dla projektu WCF, jeśli utworzono z Visual Studio, jest folder bin. – Chandermani
To trochę mnie robi pewne rzeczy MVC3, gdzie binarki trafiły do bin \ x86 \ debug na podstawie ustawień Menedżera konfiguracji rozwiązania. Mam nadzieję, że to pomoże następnej osobie wymachującej dookoła ... Po prostu zmień wydruk strony na bin \ – Snowy