My.WebServices 物件
提供屬性,以建立和存取目前專案所參考之每個 XML Web Service 的單一執行個體。
備註
My.WebServices
物件會提供目前專案所參考之每個 Web 服務的執行個體。 每個執行個體都是依需要具現化。 您可以透過 My.WebServices
物件的屬性來存取這些 Web 服務。 屬性名稱和屬性存取的 Web 服務名稱相同。 任何繼承自 SoapHttpClientProtocol 的類別都是 Web 服務。 如需將 Web 服務新增至專案的相關資訊,請參閱存取應用程式 Web 服務。
My.WebServices
物件只會公開與目前專案相關聯的 Web 服務, 不會提供在所參考的 DLL 中宣告的 Web 服務存取權。 若要存取 DLL 提供的 Web 服務,您必須使用
物件及其屬性不適用於 Web 應用程式。
屬性
My.WebServices
物件的每個屬性都提供目前專案所參考之 Web 服務執行個體的存取權。 屬性的名稱與屬性存取的 Web 服務名稱相同,且屬性類型與 Web 服務的類型相同。
注意
如果發生名稱衝突,存取 Web 服務的屬性名稱則為 <根命名空間>_<命名空間>_<服務名稱>。 例如,假設有兩個名為 Service1
的 Web 服務。 如果其中一個服務位於根命名空間 WindowsApplication1
的命名空間 Namespace1
中,則可以使用 My.WebServices.WindowsApplication1_Namespace1_Service1
存取該服務。
當您第一次存取其中一個 My.WebServices
物件的屬性時,會建立 Web 服務的新執行個體並加以儲存。 該屬性的後續存取會傳回該 Web 服務的執行個體。
您可以將 Nothing
指派給 Web 服務的屬性,以處置該 Web 服務。 屬性 setter 會將 Nothing
指派給預存值。 如果您將 Nothing
以外的任何值指派給屬性,setter 則會擲回 ArgumentException 例外狀況。
您可以使用 Is
或 IsNot
運算子,測試 My.WebServices
物件的屬性是否儲存 Web 服務的執行個體。 您可以使用這些運算子來檢查屬性的值是否為 Nothing
。
注意
一般而言,Is
或 IsNot
運算子必須讀取屬性的值,才能執行比較。 不過,如果屬性目前儲存的是 Nothing
,則屬性會建立 Web 服務的新執行個體,然後傳回該執行個體。 不過,Visual Basic 編譯器會特別處理 My.WebServices
物件的屬性,並允許 Is
或 IsNot
運算子檢查屬性的狀態,而不改變其值。
範例
這個範例會呼叫 TemperatureConverter
XML Web Service 的 FahrenheitToCelsius
方法,並傳回結果。
Function ConvertFromFahrenheitToCelsius(
ByVal dFahrenheit As Double) As Double
Return My.WebServices.TemperatureConverter.FahrenheitToCelsius(dFahrenheit)
End Function
若要讓此範例能夠運作,您的專案必須參考名為 Converter
的 Web 服務,而且該 Web 服務必須公開 ConvertTemperature
方法。 如需詳細資訊,請參閱存取應用程式 Web 服務。
此程式碼無法在 Web 應用程式專案中運作。
需求
依專案類型的可用性
專案類型 | 可用的 |
---|---|
Windows 應用程式 | 是 |
類別庫 | 是 |
主控台應用程式 | 是 |
Windows 控制項程式庫 | 是 |
Web 控制項程式庫 | 是 |
Windows 服務 | 是 |
網站 | No |