My.WebServices (Objeto)

Proporciona propiedades para crear y acceder a una sola instancia de cada servicio web XML al que hace referencia el proyecto actual.

Comentarios

El objeto My.WebServices proporciona una instancia de cada servicio Web al que hace referencia el proyecto actual. Cada una de las instancias se crea a petición. Puede tener acceso a estos servicios Web a través de las propiedades del objeto My.WebServices. El nombre de la propiedad es igual que el nombre del servicio Web al que tiene acceso la propiedad. Cualquier clase que hereda de SoapHttpClientProtocol es un servicio web. Para obtener información sobre cómo agregar servicios web a un proyecto, consulte Acceso a los servicios web de las aplicaciones.

El objeto My.WebServices expone solo los servicios web asociados al proyecto actual. No proporciona acceso a los servicios web declarados en archivos DLL a los que se hace referencia. Para acceder a un servicio web que proporciona un archivo DLL, debe usar el nombre completo del servicio web, con el formato DllName.WebServiceName. Para obtener más información, consulte Acceso a los servicios web de las aplicaciones.

El objeto y sus propiedades no están disponibles para las aplicaciones web.

Propiedades

Cada propiedad del objeto My.WebServices proporciona acceso a una instancia de un servicio web al que el proyecto actual hace referencia. El nombre de la propiedad es el mismo que el nombre del servicio web al que accede la propiedad y el tipo de propiedad es el mismo que el tipo del servicio web.

Nota

Si hay una colisión de nombres, el nombre de la propiedad para acceder a un servicio web es RootNamespace_Namespace_ServiceName. Por ejemplo, considere dos servicios web denominados Service1. Si uno de estos servicios está en el espacio de nombres raíz WindowsApplication1 y en el espacio de nombres Namespace1, se accedería al servicio con My.WebServices.WindowsApplication1_Namespace1_Service1.

Cuando se accede por primera vez a una de las propiedades My.WebServices del objeto, se crea una instancia del servicio web y se almacena. Los accesos posteriores de esa propiedad devuelven esa instancia del servicio web.

Puede eliminar un servicio web si asigna Nothing a la propiedad de ese servicio web. El establecedor de propiedad asigna Nothing al valor almacenado. Si asigna un valor distinto de Nothing a la propiedad, el establecedor produce una excepción ArgumentException.

Use el operador Is o IsNot para probar si una propiedad del objeto My.WebServices almacena una instancia del servicio web. Puede usar esos operadores para comprobar si el valor de la propiedad es Nothing.

Nota

Normalmente, el operador Is o IsNot tiene que leer el valor de la propiedad para realizar la comparación. Sin embargo, si la propiedad almacena Nothing actualmente, dicha propiedad crea una instancia del servicio web y, después, devuelve esa instancia. No obstante, el compilador de Visual Basic trata las propiedades del objeto My.WebServices de forma especial y permite que el operador Is o IsNot compruebe el estado de la propiedad sin modificar su valor.

Ejemplo

En este ejemplo se llama al método FahrenheitToCelsius del servicio web XML TemperatureConverter y se devuelve el resultado.

Function ConvertFromFahrenheitToCelsius(
    ByVal dFahrenheit As Double) As Double

    Return My.WebServices.TemperatureConverter.FahrenheitToCelsius(dFahrenheit)
End Function

Para que este ejemplo funcione, el proyecto debe hacer referencia a un servicio web llamado Converter y ese servicio web debe exponer el método ConvertTemperature. Para obtener más información, consulte Acceso a los servicios web de las aplicaciones.

Este código no funciona en un proyecto de aplicación web.

Requisitos

Disponibilidad por tipo de proyecto

Tipo de proyecto Disponible
Aplicación Windows
Biblioteca de clases
Aplicación de consola
Biblioteca de controles de Windows
Biblioteca de controles web
Servicio de Windows
Sitio web No

Consulte también