He estado creando y consumiendo servicios web durante años y siempre he podido usar Visual Studio para crear una referencia de servicio desde el cliente. Tengo un servicio de terceros con el que necesito trabajar y se niegan a abrir su seguridad para que pueda ver el wsdl y hacer referencia al servicio. Es un servicio público, por lo que no veo la necesidad de ese nivel de seguridad, pero es lo que es.
Sé que esta es una pregunta n00b y me da vergüenza preguntarla, pero ¿cómo puedo crear la información de referencia de servicio equivalente en mi cliente cuando todo lo que tengo disponible es una copia física del wsdl que el cliente me envió por correo electrónico? Web.config cambia, la capa de objeto sobre los datos SOAP, etc. Al igual que con una referencia de servicio automatizada, solo quiero abrir una conexión al servicio y comenzar a usarla con los objetos definidos.
El servicio de terceros no es WCF por lo que puedo decir, pero es SOAP. Estoy usando VS 2010 por cierto. Gracias de antemano, Ken
fuente
Respuestas:
Este puede ser el método más fácil.
fuente
Hay dos maneras de hacer esto. Puede usar el IDE para generar un WSDL, o puede hacerlo a través de la línea de comando.
1. Para crearlo a través del IDE:
En el panel del explorador de soluciones, haga clic con el botón derecho en el proyecto al que desea agregar el Servicio:
Luego, puede ingresar la ruta a su servicio WSDL y presionar ir:
2. Para crearlo a través de la línea de comando:
Abra un símbolo del sistema VS 2010 (Programas -> Visual Studio 2010 -> Visual Studio Tools)
Luego ejecute:
WSDL.exe generará un archivo .cs para su consumo.
Si tiene otras dependencias que recibió con el archivo, como xsd, agréguelas a la lista de argumentos:
Si necesita una salida VB, úsela
/language:VB
además de/verbose
.fuente
import
símbolo seguido de una ubicación de esquema que apunta a una ruta xsd, también necesitará esos archivos xsd.