2009-07-21 16 views
6

Parece una pregunta simple, pero no he podido encontrar la respuesta en línea a través de muchas búsquedas en Google. Tengo un servicio web C# y, cuando visito su página ASMX en el navegador, para un método particular, siempre tiene lo siguiente:Descripción del servicio web ASMX Parámetros de WebMethod

"La siguiente es una solicitud y respuesta de ejemplo de SOAP 1.1. reemplazado con valores reales ".

Del mismo modo para SOAP 1.2 y HTTP POST. Lo que yo quiero saber es cómo puedo reemplazar los marcadores de posición que se muestran, que son cosas como:

<myParameter>string</myParameter> 

Donde 'cadena' es el marcador de posición. Y en la respuesta:

<xsd:schema>schema</xsd:schema>xml 

Donde 'esquema' y 'xml' son los marcadores de posición. He estado usando otro servicio web que tiene estos marcadores de posición rellenos con valores de ejemplo para los parámetros y respuestas, y me gustaría definir dichos ejemplos para mis propios métodos web, también. Pude describir todo el método con lo siguiente:

[WebMethod(Description="Does awesome things.")] 

Pero no he encontrado nada para los parámetros individuales de un método web.

Respuesta

4

De manera predeterminada, se llama a DefaultWsdlHelpGenerator.aspx para generar la página de "ayuda". Puede establecer otra plantilla (o modificada) con el wsdlHelpGenerator Element en su archivo web.config.

0

¿Por qué querrías hacer eso? La página que ves en el navegador cuando tocas tu asmx solo está dando solicitudes de muestra y respuestas. Si desea obtener datos usando esos ejemplos, reemplace los valores de placholder en la solicitud con lo que está consultando desde el servicio, y publíquelo ...

Editar: Quiero decir, si realmente necesita reemplazar esos placholder valores, escriba el código en su servicio para determinar cuándo alguien hace un GET (que implica visualización desde un navegador), y juegue con la respuesta, cambiando los valores del marcador de posición a lo que necesite.

0

No puede hacerlo. Si la página de ayuda (que es lo que está describiendo) no tiene un cuadro de entrada para un parámetro en particular, significa que no sabe cómo hacerlo.

En cualquier caso, no debe prestar demasiada atención a esas páginas. Se van con WCF.

De todos modos, nunca fueron de mucha utilidad, a excepción de los servicios web más sencillos. Eran una forma de hacer que las personas participaran en el juego del servicio web desde el principio, cuando no había herramientas para ayudarlo a probar un servicio web. Use soapUI en su lugar.


Por cierto, también ver Microsoft: ASMX Web Services are a “Legacy Technology” por qué tiene sentido hacer caso omiso de las páginas ASMX-solamente.

Cuestiones relacionadas