Pregunta
¿Alguien conoce una buena herramienta para generar el WSDL para un contrato de servicio escrito en C# (es decir,conjunto de métodos que están etiquetados como "[OperationContract]" usando WCF)?Todas las herramientas que he encontrado funcionan al revés:crear códigos auxiliares a partir de un WSDL.No quiero tener que bloquear manualmente un archivo WSDL.Encontré herramientas para php y J2EE, pero no para C#.¡Gracias!
Solución
Lo más fácil de hacer es alojar el servicio con una configuración de dirección base y luego simplemente acceder a él desde un navegador con "?wsdl" añadido al final.
A continuación se muestra un ejemplo de una configuración de servicio con una dirección base especificada.Tenga en cuenta que esto va en el <configuration><services>
elemento en su configuración:
<service name="MyServiceName" behaviorConfiguration="MyServiceBehavior">
<host>
<baseAddresses>
<add baseAddress="http://localhost:9000/MyService"/>
</baseAddresses>
</host>
<endpoint address="net.tcp://localhost:9001/MyService"
binding="netTcpBinding"
contract="IMyService"
bindingConfiguration="MyServiceBinding"/>
</service>
Una vez que lo tengas alojado, simplemente ve a http://localhost:9000/MyService?wsdl
para ver la definición de WSDL.
Otros consejos
svcutil o simplemente hospedarlo rápidamente y llegar al punto MEX :)
Dos caminos:
a) Descargue el archivo wsdl y siga los pasos a continuación:
i) Abra el símbolo del sistema de Visual Studio como administrador.
ii) Escriba el siguiente comando:
wsdl.exe [ruta a su archivo WSDL]
b) Con punto final:
i) Abra el símbolo del sistema de Visual Studio como administrador.
ii) escriba el siguiente comando:wsdl.exe http://localhost:9000/MiServicio