2012-10-19 12 views
20

Utworzyłem usługę WWW RESTful w języku C# i wdrożyłem ją w usługach IIS. Kiedy mam dostęp do usługi HeadOffice.svc, mam opcję wyświetlenia WSDL (HeadOffice.svc? Wsdl). Chciałbym mieć możliwość przeglądania WADL (na przykład HeadOffice.svc? Wadl). czy to możliwe?Usługa sieci Web RESTful generuje automatycznie WADL

Przeczytałem w miejscu, które według ogólnej opinii nie jest to najlepsza praktyka. Jednak potrzebuję WADL do zadania szkolnego, więc każda pomoc będzie bardzo cenna.

Odpowiedz

17

Załóżmy, że wiesz już, że WADL nie jest standardem/nie jest szeroko obsługiwany. A gdy ktoś potrzebuje WADL, może lepiej wtedy skorzystać z usługi WS */SOAP + WSDL. Twoje zadanie wygląda bardzo dziwnie.

W każdym razie WADL nie jest wspierany "od razu po uruchomieniu" w żadnej implementacji REST z Microsoft, ani WCF 3.5 Rest Starter Kit, ani WCF 4 REST, ani ASP.NET WebAPI.

Nie ma niezawodnych narzędzi dla WADL dla .NET.

Jeśli Twoim celem jest wygenerowanie kodu klienta C# za pomocą WADL, uwierz mi, że poświęcisz więcej czasu na pisanie kodu klienta samodzielnie. I są lepsze rozwiązania.

Można używać nowych klas jak HttpClient klasy lub RestSharp lub podobnych bibliotek łatwo ręcznie napisać klienta i będzie jeszcze szybciej niż googlowania dla niezawodnego rozwiązania WADL NET

Podobne pytanie na StackOverflow: Restful service in .NET with WADL instead of WSDL

AKTUALIZACJA - Swagger: Przez kilka lat swagger ustalił się jako taki format. Możesz rozpocząć pisanie definicji usługi za pomocą YAML-a swaggera w Swagger editor lub pozwolić wygenerować chwiejność z istniejących usług dla .NET przy użyciu biblioteki Swashbuckle. Drugi jest czymś, co mieliśmy z WSDL, a edytor zbagatelizujmy generowanie kart katalogowych klientów i serwerów. Niezależnie od tego, czy generujesz swój serwer lub klienta, czy też nie jesteś jego fanem, swagger jest w rzeczywistości bardzo dobrym formatem wymiany kontraktów dla usługi REST, a nie idealnym, ale dobrym rozwiązaniem.

+0

Dzięki za informacje! Zamierzałem wygenerować kod Java z WADL. Wygląda jednak na to, że będę miał inną ścieżkę niż ścieżka WADL. –

+0

Ten pierwszy link jest zupełnie bezużyteczny, wygląda na to, że połączyłeś się z projektem, który nie ma nawet kodu źródłowego. Jaki jest sens? –

+0

Dmitri Nesteruk Point jest taki, że WADL podoba się temu linkowi dla platformy .NET i jest przestarzały. I lepiej pisać ręcznie dostęp do usług, albo spróbuj wygenerować w stylu SOAP WSDL – Regfor

Powiązane problemy