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 | Sí |
Biblioteca de clases | Sí |
Aplicación de consola | Sí |
Biblioteca de controles de Windows | Sí |
Biblioteca de controles web | Sí |
Servicio de Windows | Sí |
Sitio web | No |