淺談VB.NET調(diào)用Web Service
VB.NET有很多值得學(xué)習(xí)的地方,這里我們主要介紹VB.NET調(diào)用Web Service,包括介紹XX等方面。
在VB.NET調(diào)用Web Service提供的服務(wù)
當(dāng)Web Service已經(jīng)處于對外提供服務(wù)狀態(tài),VB.NET就可以通過HTTP"調(diào)用"來使用這些服務(wù)了。當(dāng)然前提是要了解Web Service對外提供服務(wù)所對應(yīng)的URL,當(dāng)了解到Web Service對應(yīng)的URL后,VB.NET就像是使用本地的類庫一樣使用Web Service中提供的各種功能。所以有些人說,Web Service從實質(zhì)上說,就是通過HTTP調(diào)用遠程組件的一種方式。在VB.NET具體實現(xiàn)加入Web Service可參閱下面步驟中的第七步。
在下面介紹的這個數(shù)據(jù)庫應(yīng)用程序是通過使用上面的Web Service中提供的"Binding"服務(wù),對程序中DataGrid組件實現(xiàn)數(shù)據(jù)綁定,提供使用Web Service中提供的"Update"服務(wù),通過程序中的DataGrid來修改數(shù)據(jù)庫。下面就是VB.NET調(diào)用Web Service提供服務(wù)來編寫數(shù)據(jù)庫應(yīng)用程序的具體步驟:
1. 啟動Visual Studio .Net。
2. 選擇菜單【文件】|【新建】|【項目】后,彈出【新建項目】對話框。
3. 將【項目類型】設(shè)置為【Visual Basic項目】。
4. 將【模板】設(shè)置為【W(wǎng)indows應(yīng)用程序】。
5. 在【名稱】文本框中輸入【TestWebService】。
6. 在【位置】的文本框中輸入【E:\VS.NET項目】,然后單擊【確定】按鈕,這樣在"E:\VS.NET項目"中就產(chǎn)生了名稱為"TestWebService"文件夾,里面存放的就是TestWebService項目的所有文件。
7. 選擇【解決方案資源管理器】|【引用】后,單擊鼠標(biāo)右鍵,在彈出的菜單中選擇【添加Web 引用】,在彈出的【添加Web引用】對話框中的【地址】文本框中輸入"http://localhost/ UpdateDataWebService /Service1.asmx "后,單擊回車鍵后,可得圖03所示界面。單擊圖03中【添加引用】按鈕,則在【TestWebService】項目中加入了Web引用。請注意"http://localhost/ UpdateDataWebService /Service1.asmx "就是上面完成的Web Service對外提供服務(wù)的URL地址。
8. 從【工具箱】中的【W(wǎng)indows窗體組件】選項卡中往Form1窗體中拖入下列組件,并執(zhí)行相應(yīng)的操作:
◆DataGrid組件。
◆Button組件,分別是Button1至Button2,并在這二個Button組件拖入Form1的設(shè)計窗體后,分別雙擊它們,則系統(tǒng)會在Form1.vb文件分別產(chǎn)生這二個組件的Click事件對應(yīng)的處理代碼。
把VB.NET的當(dāng)前窗口切換到Form1.vb的代碼編輯窗口,并用下列代碼替換Form1.vb中的Button1的Click事件對應(yīng)的處理代碼,下列代碼功能是使用Web Service中提供的"Binding"服務(wù)對DataGrid組件實現(xiàn)數(shù)據(jù)綁定:
- Private Sub Button1_Click (
- ByVal sender As System.Object , ByVal e As System.EventArgs )
- Handles Button1.Click
- Dim MyService As New localhost.Service1 ( )
- DataGrid1.DataSource = MyService.Binding ( )
- DataGrid1.DataMember = "Cust"
- End Sub
用下列代碼替換Form1.vb中的Button2的Click事件對應(yīng)的處理代碼,下列代碼功能是使用Web Service中提供的"Update"服務(wù)實現(xiàn)通過DataGrid來修改數(shù)據(jù)庫數(shù)據(jù):
- Private Sub Button2_Click (
- ByVal sender As System.Object , ByVal e As System.EventArgs )
- Handles Button2.Click
- Dim MyService As New localhost.Service1 ( )
- Dim ds As DataSet = DataGrid1.DataSource
- Dim dsChanges As DataSet = ds.GetChanges ( )
- If Not ( dsChanges Is Nothing ) Then
- ds.Merge ( MyService.Update ( dsChanges ) , True )
- End If
- End Sub
至此, 【TestWebService】項目的全部工作就完成了,調(diào)用Web Service是不是很簡單。此時單擊快捷鍵F5運行程序后。單擊程序中的【綁定】按鈕就會對程序中的DataGrid組件實現(xiàn)數(shù)據(jù)綁定,單擊程序中的【修改】按鈕,則程序會根據(jù)DataGrid中的內(nèi)容來更新數(shù)據(jù)庫。
【編輯推薦】