2011-08-31 11 views
7

Utworzono usługę WWW WCF i lokalnie, gdy uzyskuję dostęp do pliku wsdl, takiego jak (http://localhost/myservice/service.svc?wsdl, po prostu pokazuje plik wsdl, a następnie przesłałem go do mojego serwera wirtualnego hostowanego przez GoDaddy i kiedy call http://my adres ip: myport/service.svc? wsdl wynikiem jest strona, na której znajduje się "Utworzono usługę". Jest to ta sama strona, która jest wyświetlana, gdy wywoływam ten sam adres URL, ale bez adresu IP? wsdl (http://my : myport/service.svc) .Jak można uzyskać w moim pliku wsdl na serwerze wirtualnym Dlaczego tak się stało inaczej niż mój komputer lokalny?Gdzie jest plik wsdl w usługach WCF

+0

Czy masz taki sam plik konfiguracyjny na serwerze, jak na maszynie programistycznej? –

Odpowiedz

12

Upewnij się, że plik konfiguracyjny w środowisku hostingu umożliwia pobranie dokumentu WSDL. Powinien zawierać to:

<behaviors> 
    <serviceBehaviors> 
    <behavior name="metadata"> 
     <serviceMetadata httpGetEnabled="true" /> 
    <behavior> 
    </serviceBehaviors> 
</behaviors> 

Odwołaj się do tego zachowania w konfiguracji usługi użytkownika.

Edit:

Żeby było jasne. Przy domyślnym zachowaniu WCF plik WSDL nigdzie nie występuje. Jest generowany automatycznie i to automatyczne generowanie musi być dozwolone.

+1

Dobra, jest generowana automatycznie, ale musi być gdzieś zapisana, chwilowo przynajmniej ... –

+0

Podczas gdy powinno być oczywiste, element zachowania musi zostać zamknięty. Nie mogę edytować postu, ponieważ zawiera on zbyt mało zmian. – Dono

Powiązane problemy