My.WebServices (Objeto)
Actualización: noviembre 2007
Suministra propiedades para crear una instancia única de cada servicio Web XML al que hace referencia el proyecto actual y tener acceso a ella.
Comentarios
El objeto My.WebServices proporciona una instancia de cada servicio Web al que hace referencia el proyecto actual. Se crea cada instancia 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 se hereda de SoapHttpClientProtocol es un servicio Web. Para obtener información sobre cómo agregar servicios Web a un proyecto, vea Cómo: Obtener acceso a un servicio web en código administrado.
El objeto My.WebServices expone sólo los servicios Web asociados al proyecto actual. No proporciona acceso a servicios Web declarados en archivos DLL a los que se hace referencia. Para tener acceso a un servicio Web que un archivo DLL proporciona, debe utilizar el nombre completo del servicio Web, con el formato nombreDeDll.nombreDeServicioWeb. Para obtener más información, vea Obtener acceso a servicios web en código administrado.
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 hace referencia el proyecto actual. El nombre de la propiedad es el mismo que el del servicio Web al que la propiedad tiene acceso y el tipo de propiedad es igual que el tipo de servicio Web.
Nota: |
---|
Si hay un conflicto de nombres, el nombre de la propiedad para tener acceso a un servicio web es espacioDeNombresRaíz_espacioDeNombres_nombreDeServicio. 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, obtendría acceso a ese servicio mediante My.WebServices.WindowsApplication1_Namespace1_Service1. |
Cuando se tiene acceso por primera vez a una de las propiedades del objeto My.WebServices, éste crea una nueva instancia del servicio Web y la almacena. Los accesos siguientes a la propiedad devuelven esa instancia del servicio Web.
Puede desechar un servicio Web asignando Nothing a la propiedad de ese servicio Web. El establecedor de la propiedad asigna Nothing al valor almacenado. Si se asigna un valor distinto de Nothing a la propiedad, el establecedor produce una excepción ArgumentException.
Puede probar si una propiedad del objeto My.WebServices almacena una instancia del servicio Web mediante el operador Is o IsNot. Puede utilizar 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 actualmente Nothing, crea una nueva instancia del servicio Web y, a continuación, devuelve esa instancia. No obstante, el compilador de Visual Basic trata las propiedades del objeto My.WebServices de forma especial y permite al operador Is o IsNot comprobar el estado de la propiedad sin cambiar su valor. |
Tareas
En la tabla siguiente se muestra un ejemplo de una tarea en la que interviene el objeto My.Forms.
Para |
Vea |
---|---|
Llamar de forma asincrónica a un servicio Web y controlar un evento cuando finaliza |
Ejemplo
Este ejemplo llama al método FahrenheitToCelsius del servicio Web XML TemperatureConverter y 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 denominado Converter y ese servicio Web debe exponer el método ConvertTemperature. Para obtener más información, vea Cómo: Obtener acceso a un servicio web en código administrado.
Este código no funciona en un proyecto de aplicación Web.
Requisitos
Disponibilidad por tipo de proyecto
Tipo de proyecto |
Disponible |
---|---|
Aplicación para 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 |
Vea también
Tareas
Cómo: Obtener acceso a un servicio web en código administrado
Conceptos
Acceso a los servicios Web de la aplicación