2012-10-19 19 views
20

Ho creato un servizio Web RESTful in C# e lo ho distribuito su IIS. Quando accedo al servizio HeadOffice.svc, ho la possibilità di visualizzare il WSDL (HeadOffice.svc? Wsdl). Quello che mi piacerebbe fare è avere la possibilità di visualizzare il WADL (ad esempio HeadOffice.svc? Wadl). È possibile?Il servizio Web RESTful genera automaticamente WADL

Ho letto in giro che l'opinione generale è che questa non è la migliore pratica. Tuttavia, ho bisogno del WADL per un incarico scolastico, quindi qualsiasi aiuto sarebbe molto apprezzato.

risposta

17

Supponiamo che tu sappia già che WADL non è standard/non ampiamente supportato. E quando qualcuno ha bisogno di WADL, potrebbe essere meglio usare WS */SOAP service + WSDL. Quindi il tuo compito sembra molto strano.

Comunque WADL non è supportato "out of the box" in qualsiasi implementazione REST da Microsoft, né WCF 3.5 Starter Kit Riposo, né WCF 4 REST, e ASP.NET WebAPI.

Non esistono strumenti affidabili per WADL per .NET.

Quando il tuo obiettivo è generare codice client C# usando WADL, credimi, passerai più tempo scrivendo codice client da solo. E ci sono soluzioni migliori per questo.

È possibile utilizzare nuove classi come HttpClient classe o RestSharp o librerie simili di scrivere facilmente manualmente il cliente e sarà ancora più veloce allora googling per soluzione WADL affidabile per .NET

domanda simile su StackOverflow: Restful service in .NET with WADL instead of WSDL

UPDATE - Swagger: Per alcuni anni swagger si è stabilito come tale formato. È possibile iniziare a scrivere la definizione del servizio utilizzando lo YAML di swagger nello Swagger editor o lasciare generare swagger dai servizi esistenti, per .NET utilizzando la libreria Swashbuckle. Il secondo è qualcosa che abbiamo avuto con WSDL e l'editor swagger consente di generare hotplaces client e server. Indipendentemente dal fatto che stai generando il tuo server o client o non fan, swagger è in realtà un formato di scambio di contratto molto buono per il servizio REST, non l'ideale ma una buona opzione.

+0

Grazie per l'informazione! Intendevo generare codice Java sotto forma di WADL. Tuttavia, sembra che farò un percorso diverso da quello del WADL. –

+0

Il primo collegamento è completamente inutile, sembra che tu ti sia collegato a un progetto che non ha nemmeno un codice sorgente. Qual e il punto? –

+0

Dmitri Nesteruk Point è che il collegamento WADL è morto per .NET e obsoleto. Ed è meglio scrivere manualmente l'accesso al servizio o provare a generare in stile SOAP WSDL – Regfor

Problemi correlati