My.WebServices, objet
Fournit des propriétés permettant de créer une instance unique de chaque service web XML qui est référencé par le projet actuel et d’y accéder.
Notes
L’objet My.WebServices
fournit une instance de chaque service web référencé par le projet actuel. Chaque instance est instanciée sur demande. Vous pouvez accéder à ces services web via les propriétés de l’objet My.WebServices
. La propriété porte le même nom que le service web auquel elle accède. Toute classe qui hérite de SoapHttpClientProtocol est un service web. Pour plus d’informations sur l’ajout de services Web à un projet, consultez Accès aux services web d’application.
L’objet My.WebServices
expose uniquement les services Web associés au projet actuel. Il ne fournit pas l’accès aux services Web déclarés dans les DLL référencées. Pour accéder à un service Web fourni par une DLL, vous devez utiliser le nom qualifié du service Web, sous la forme DllName.WebServiceName. Pour plus d’informations, consultez Accès aux services web d’application.
L’objet et ses propriétés ne sont pas disponibles pour les applications web.
Propriétés
Chaque propriété de l’objet My.WebServices
fournit l’accès à une instance d’un service Web référencé par le projet actuel. Le nom de la propriété est identique au nom du service Web auquel la propriété accède, et le type de propriété est identique au type du service Web.
Notes
S’il existe une collision de noms, le nom de la propriété permettant d’accéder à un service web est RootNamespace_Namespace_ServiceName. Par exemple, considérez deux services Web nommés Service1
. Si l’un de ces services se trouve dans l’espace de noms racine WindowsApplication1
et dans l’espace de noms Namespace1
, vous pouvez accéder à ce service à l’aide de My.WebServices.WindowsApplication1_Namespace1_Service1
.
Lorsque vous accédez d’abord à l’une des propriétés de l’objet My.WebServices
, elle crée une instance du service Web et la stocke. Les accès suivants de cette propriété retournent cette instance du service Web.
Vous pouvez supprimer un service Web en affectant Nothing
à la propriété pour ce service Web. Le setter de propriété affecte Nothing
à la valeur stockée. Si vous affectez une valeur autre que Nothing
à la propriété, le setter lève une exception ArgumentException.
Vous pouvez tester si une propriété de l’objet My.WebServices
stocke une instance du service Web à l’aide de l’opérateur Is
ou IsNot
. Vous pouvez utiliser ces opérateurs pour vérifier si la valeur de la propriété est Nothing
.
Notes
En règle générale, l’opérateur Is
ou IsNot
doit lire la valeur de la propriété pour effectuer la comparaison. Toutefois, si la propriété stocke actuellement Nothing
, la propriété crée une nouvelle instance du service Web, puis retourne cette instance. Toutefois, le compilateur Visual Basic traite les propriétés de l’objet My.WebServices
spécialement et permet à l’opérateur Is
ou IsNot
de vérifier l’état de la propriété sans modifier sa valeur.
Exemple
Cet exemple appelle la méthode FahrenheitToCelsius
du service web XML TemperatureConverter
et retourne le résultat.
Function ConvertFromFahrenheitToCelsius(
ByVal dFahrenheit As Double) As Double
Return My.WebServices.TemperatureConverter.FahrenheitToCelsius(dFahrenheit)
End Function
Pour que cet exemple fonctionne, votre projet doit référencer un service Web nommé Converter
, et ce service web doit exposer la méthode ConvertTemperature
. Pour plus d’informations, consultez Accès aux services web d’application.
Ce code ne fonctionne pas dans un projet d’application web.
Spécifications
Disponibilité par type de projet
Type de projet | Disponible |
---|---|
Application Windows | Oui |
Bibliothèque de classes | Oui |
Application console | Oui |
Bibliothèque de contrôles Windows | Oui |
Bibliothèque de contrôles web | Oui |
Service Windows | Oui |
Site web | Non |