http://shaocian.blogspot.tw/2013/06/iis-web-service-aspnet.html
這裡我們要撰寫一支 ASP.NET 程式來呼叫 Web Service。
同樣的我們要新增一個專案,選擇 Web -> ASP.NET 空白 Web 應用程式
新增一個 WebForm
簡單設定測試頁面之後存檔,aspx 程式碼如下:
<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="WebForm.aspx.vb" Inherits="WebApplication.WebForm" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div> <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> <br /> <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox> <br /> <asp:Button ID="Button1" runat="server" Text="Button" /> <br /> <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label> </div> </form> </body> </html>
基本頁面設置好後,需要加入服務參考
設定位址為 Web Service 的網址,點選「移至」就會帶出提供的服務。
設計好版面及服務參考後,接下來就是開始撰寫程式碼:
Public Class WebForm Inherits System.Web.UI.Page Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load End Sub Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Dim ws As ServiceReference1.WebServiceSoapClient = New ServiceReference1.WebServiceSoapClient() Dim result As String Dim a As Integer = Integer.Parse(TextBox1.Text) Dim b As Integer = Integer.Parse(TextBox2.Text) result = ws.Test(a, b) ws.Close() Label1.Text = result End Sub End Class
程式解釋:
主要就是建立一個 Web Service 的 Client 端物件,然後再去呼叫該物件提供的方法。
ServiceReference1 就是我們設定服務參考時的名稱,只要我們要存取該服務就要生成該物件,也可以在「方案總管」中點選 ServiceReference1 ,然後按右鍵 -> 重新命名,改成好記的名子例如 LocalWebService
此時程式碼就必須修改為
Dim ws As LocalWebService.WebServiceSoapClient = New LocalWebService.WebServiceSoapClient()
執行畫面及結果
輸入 3 及 8 後,顯示的是經過 Web Service 伺服器端運算後的結果,也就是 8
以上就是整個完整的 Web Service 服務設置及呼叫的範例。
沒有留言:
張貼留言