Я создал базовый проект библиотеки WCF и развернул его на локальную установку IIS (7.5). Всякий раз, когда я пытаюсь перейти к нему через localhost/TestWcfServiceLibrary /, я просто получаю представление в виде каталога.Как развернуть WCF для IIS и оставить его в покое
Однако, если я запускаю службу в режиме отладки из визуальной студии, я получаю всплывающее окно системного лотка, сообщающее мне, что оно было размещено, а затем, когда я возвращаюсь в localhost/TestWcfServiceLibrary /, я могу видеть WSDL. Как только я останавливаю режим отладки и обновляю браузер, я возвращаюсь к представлению каталога.
Базовый адрес в файле конфигурации - localhost/TestWcfServiceLibrary /, поэтому я не понимаю, почему я вижу это поведение.
Интересно, если я перейду к localhost/TestWcfServiceLibrary/service.service1.svc (Файл, который не существует) Я получаю wsdl, даже если режим отладки отключен.
У меня есть 2 вопроса.
1) Почему режим отладки в визуальной студии вообще влияет на то, могу ли я получить доступ к wsdl из пути localhost/TestWcfServiceLibrary? (Я подозреваю, что это связано с тем, что служба wcf технически не размещена на «localhost», она размещена на сервере, поэтому адрес действительно не существует, пока не включен режим отладки, поэтому я фактически подключен к временно размещенной версии, что визуальная студия предоставляет и НЕ настоящий веб-сервис IIS?)
2) При развертывании библиотеки служб WCF непосредственно в IIS всегда правильно указывать на файл .svc с пространством имен и именем класса вашего контракта на обслуживание, даже хотя этот файл действительно не существует (я предполагаю, что это волшебство, которое IIS выполняет для вас)?