Contenidos
- Crear un proyecto «Aplicación web ASP.NET (.NET Framework)»
- Crear una aplicación web ASP.NET «Vacío»
- Agregar un nuevo elemento «Servicio web (ASMX)»
- Código de ejemplo del servicio Web (ASMX)
- Para poder ver la aplicación desde un servidor IIS local es necesario tener configurada la «Característica de Windows» del servidor IIS «Internet Information Services», además hay que activar la característica «ASP .NET 4.8»
- Arrancar «Microsoft Visual Studio» como administrador (es necesario para crear un directorio virtual)
- Abrir «Propiedades» para configurar en apartado web la opción «IIS local», después pulsar en «Crear directorio virtual»
- Ver en Explorador el servicio Web
- Resultado del servicio Web
- Invocar a la función «HelloWorld» desde PowerShell con New-WebServiceProxy
ASMX proporciona la capacidad de compilar servicios web que envían mensajes mediante el Protocolo simple de acceso a objetos (SOAP). SOAP es un protocolo independiente de la plataforma e independiente del lenguaje para crear y obtener acceso a servicios Web. No es necesario que los consumidores de un servicio ASMX sepan nada sobre la plataforma, el modelo de objetos o el lenguaje de programación usado para implementar el servicio. Solo necesitan saber cómo enviar y recibir mensajes SOAP.
El módulo ASMX en el caso de Visual Studio es mantenido internamente por él.
Un mensaje SOAP es un documento XML que contiene los elementos siguientes:
- Un elemento raíz denominado Envelope que identifica el documento XML como un mensaje SOAP.
- Un elemento de encabezado opcional que contiene información específica de la aplicación, como datos de autenticación. Si el elemento de encabezado está presente, debe ser el primer elemento secundario del elemento de sobre .
- Un elemento Body necesario que contiene el mensaje SOAP destinado al destinatario.
- Un elemento Fault opcional que se usa para indicar mensajes de error. Si el elemento Fault está presente, debe ser un elemento secundario del elemento Body .
SOAP puede operar a través de varios protocolos de transporte, incluidos HTTP, SMTP, TCP y UDP. Sin embargo, un servicio ASMX solo puede funcionar a través de HTTP.
Crear un proyecto «Aplicación web ASP.NET (.NET Framework)»
Crear una aplicación web ASP.NET «Vacío»
Agregar un nuevo elemento «Servicio web (ASMX)»
Código de ejemplo del servicio Web (ASMX)
Para poder ver la aplicación desde un servidor IIS local es necesario tener configurada la «Característica de Windows» del servidor IIS «Internet Information Services», además hay que activar la característica «ASP .NET 4.8»
En caso de no tener instalada la característica podemos toparnos con el siguiente error «HTTP Error 404.3-Not Found The page you are requesting cannot be served because of the extension configuration. If the page is script, add a handler. If the file should be downloaded, add a MIME map.»
Instalar «ASP .NET 4.8»
Comprobar que se arranca IIS
Arrancar «Microsoft Visual Studio» como administrador (es necesario para crear un directorio virtual)
Abrir «Propiedades» para configurar en apartado web la opción «IIS local», después pulsar en «Crear directorio virtual»
Ver en Explorador el servicio Web
Resultado del servicio Web
Invocar a la función «HelloWorld» desde PowerShell con New-WebServiceProxy
1 2 3 |
$URI = "http://localhost/WebApplication4/WebService1.asmx" $webservice = New-WebServiceProxy -Uri $URI $webservice.HelloWorld() |