2011-08-24 12 views
5

Jestem dość nowym użytkownikiem hostingu aplikacji internetowych i serwisów internetowych. Chociaż udało mi się uruchomić aplikację internetową, uruchamiam blokadę drogi po bloku drogi, próbując hostować usługę WCF z wiązaniem net.tcp.Usługa hosta WCF z wiązaniem net.tcp za pośrednictwem Menedżera usług IIS 7.5

Mój scenariusz wygląda następująco: Mam hostowaną aplikację internetową, która musi komunikować się z hostowaną usługą WCF z wiązaniem net.tcp przez IIS 7.5. Jak stwierdzono, aplikacja internetowa jest obsługiwana dobrze i mogę przeglądać strony internetowe. Jednak aplikacja internetowa wykonuje wywołania usługi do usługi WCF i otrzymuję komunikat o błędzie "TCP error code 10061", który, jak sądzę, jest spowodowany nie uruchomioną moją hostowaną usługą WCF. Myślę, że to nie działa, ponieważ próbuję "telnet localhost 808", aby sprawdzić, czy usługa WCF jest uruchomiona, a nie jest. Przeszedłem przez wiele przewodników online i nadal nie miałem szczęścia. Sądzę, że mogę robić coś zasadniczo nie tak z moim byciem noobem i wszystkim. Jestem w stanie obsłużyć usługę za pomocą VS2010 i uruchomić aplikację internetową i działa dobrze, więc uważam, że moje powiązania są poprawne. Włączyłem także protokoły TCP na obu stronach w Menedżerze usług IIS.

Domyślam się, że moim prawdziwym pytaniem jest, jakie kroki Menedżera usług IIS potrzebne są do obsługi usługi WCF z wiązaniem net.tcp? Wydaje mi się, że nie można hostować usługi net.tcp za pośrednictwem Menedżera usług IIS, po prostu tworząc witrynę internetową, ponieważ Menedżer usług IIS chce połączyć się z portem http.

+0

Czy kiedykolwiek to rozgryzłeś? Stworzyłem własną wersję Twojego pytania, ale wydaje mi się, że mogę mieć podobny problem jak ty. http://stackoverflow.com/questions/16628382/setting-up-wcf-tcp-service-in-a-web-application –

Odpowiedz

4

Oto kilka rzeczy do sprawdzenia:

  • Upewnij się, że usługa Windows Net.TCP Listener Adapter działa
  • Zapewnienie netTcp jest wymieniony jako obsługującym protokół na swojej stronie internetowej (IIS Manager przejdź do zaawansowanego ustawienia witryny)
  • Upewnić netTcp jest wymienione jako włączonym protokołem aplikacji (katalogu), które jest gospodarzem swoich usług (w Menedżerze IIS, przejdź do katalogu gospodarzem swoje usługi i wybierz ustawienia zaawansowane)
  • Zapewnienie witryny IIS ma bindi ng dla net.tcp, z podanym prawidłowym numerem portu.

EDIT:
zobacz następującą stronę MSDN na włączenie/używając powiązań innych niż HTTP w .NET 4 + IIS 7/7.5:

Configuring the Windows Process Activation Service for Use with Windows Communication Foundation

+2

Włącz także funkcje Windows (instalowanie komponentów Windows) w Microsoft.NET Framework 3.5. 1 - Windows Communication Foundation Aktywacja bez HTTP –

+0

Dzięki za szybką odpowiedź. – David

+0

Dzięki za szybką odpowiedź. Usługa Net.TcpListenerAdapter jest uruchomiona. NetTCP jest również protokołem szyfrowanym zarówno w aplikacji internetowej, jak i usłudze sieciowej. 808: * jest protokołem netTCP. Aktywowana jest również aktywacja WCF bez Http. Dodałem także moją usługę WCF do domyślnej witryny sieci Web i tam, gdzie jest powiązany port 808 protokołu netTCP. Kolejne pytanie: w jaki sposób moja usługa WCF zostaje przeniesiona do portu 808? Czy byłby to przez mój plik web.config? Również w jaki sposób rozpoczyna się usługa WCF? Status Menedżera usług IIS wyświetla tylko "Nieznany" dla powiązania netTCP w Domyślnej witrynie sieci Web. Dzięki jeszcze raz. – David

1

I odkryłem, że dla mnie nie zrobił 't pracy używać localhost ... Należy użyć 127.0.0.1 lub nazwę komputera.

Powiązane problemy