Dela via


My.WebServices-objekt

Innehåller egenskaper för att skapa och komma åt en enda instans av varje XML-webbtjänst som refereras av det aktuella projektet.

Kommentarer

Objektet My.WebServices innehåller en instans av varje webbtjänst som refereras av det aktuella projektet. Varje instans instans instansieras på begäran. Du kan komma åt dessa webbtjänster via objektets My.WebServices egenskaper. Namnet på egenskapen är samma som namnet på den webbtjänst som egenskapen har åtkomst till. Alla klasser som ärver från SoapHttpClientProtocol är en webbtjänst. Information om hur du lägger till webbtjänster i ett projekt finns i Åtkomst till Programwebbtjänster.

Objektet My.WebServices exponerar endast de webbtjänster som är associerade med det aktuella projektet. Den ger inte åtkomst till webbtjänster som deklarerats i refererade DLL:er. För att få åtkomst till en webbtjänst som en DLL tillhandahåller måste du använda webbtjänstens kvalificerade namn i formatet DllName.WebServiceName. Mer information finns i Accessing Application Web Services (Åtkomst till Programwebbtjänster).

Objektet och dess egenskaper är inte tillgängliga för webbprogram.

Egenskaper

Varje egenskap för My.WebServices objektet ger åtkomst till en instans av en webbtjänst som refereras av det aktuella projektet. Namnet på egenskapen är samma som namnet på den webbtjänst som egenskapen har åtkomst till, och egenskapstypen är samma som webbtjänstens typ.

Kommentar

Om det uppstår en namnkollision är egenskapsnamnet för åtkomst till en webbtjänst RootNamespace_Namespace_ServiceName. Överväg till exempel två webbtjänster med namnet Service1. Om någon av dessa tjänster finns i rotnamnområdet WindowsApplication1 och i namnområdet Namespace1får du åtkomst till tjänsten med hjälp My.WebServices.WindowsApplication1_Namespace1_Service1av .

När du först kommer åt en av My.WebServices objektets egenskaper skapar den en ny instans av webbtjänsten och lagrar den. Efterföljande åtkomster av den egenskapen returnerar den instansen av webbtjänsten.

Du kan ta bort en webbtjänst genom att Nothing tilldela egenskapen för webbtjänsten. Egenskapsuppsättningen Nothing tilldelar det lagrade värdet. Om du tilldelar något annat värde än Nothing egenskapen utlöser settern ett ArgumentException undantag.

Du kan testa om en egenskap för My.WebServices objektet lagrar en instans av webbtjänsten med hjälp av operatorn Is eller IsNot . Du kan använda dessa operatorer för att kontrollera om värdet för egenskapen är Nothing.

Kommentar

Vanligtvis måste operatorn Is eller IsNot läsa värdet för egenskapen för att utföra jämförelsen. Men om egenskapen för närvarande lagrar Nothingskapar egenskapen en ny instans av webbtjänsten och returnerar sedan den instansen. Visual Basic-kompilatorn behandlar dock objektets egenskaper My.WebServices särskilt och låter Is operatorn eller IsNot kontrollera egenskapens status utan att ändra dess värde.

Exempel

Det här exemplet anropar metoden för FahrenheitToCelsiusTemperatureConverter XML-webbtjänsten och returnerar resultatet.

Function ConvertFromFahrenheitToCelsius(
    ByVal dFahrenheit As Double) As Double

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

För att det här exemplet ska fungera måste projektet referera till en webbtjänst med namnet Converter, och den webbtjänsten måste exponera ConvertTemperature metoden. Mer information finns i Accessing Application Web Services (Åtkomst till Programwebbtjänster).

Den här koden fungerar inte i ett webbprogramprojekt.

Behov

Tillgänglighet efter projekttyp

Projekttyp Tillgängligt
Windows-program Ja
Klassbibliotek Ja
Konsolprogram Ja
Windows-kontrollbibliotek Ja
Webbkontrollbibliotek Ja
Windows-tjänsten Ja
Webbplats Nej

Se även