用vs.net建立webservice+flash簡易計算機

來源:互聯網
上載者:User
web|建立 '=====================
' 轉載請保留以下資訊
'原創:歐陽東傑
'http://www.cnsxml.com
'=====================
看過這個教程後,您會發現,webservice在.net上真的很簡單!
我們要利用vs.net建立一個簡單的webservice,他的功能是進行簡單四則運算.
然後建立一個flash來調用這個webservice


一、建立WEBSERVICE
1. 開啟 Visual Studio .NET。
2. 建立一個新的 Active Server Pages (ASP) .NET Web 服務項目。 將該 Web 服務命名為 OydjService,並在必要時將其位置指定為一個適

當的運行 ASP.NET 的 Web 服務器。
3. 將 Solution 檔案的名稱改為 OydjService 以保持一致。
4. 將用 Service1.asmx 建立的預設 Web 服務的名稱更改為 OydjService.asmx。
5. 單擊設計環境中的單擊此處切換到程式碼檢視以切換到程式碼檢視。
6. 定義用來封裝您的服務功能的方法。 此服務提供的每一個方法前面都必須標有一個 WebMethod 屬性。如果沒有此屬性,則服務將不公開此

方法。

備忘: 並不是每一個方法都需要有 WebMethod 屬性。 隱藏由公用 Web 服務方法調用的某些實現細節是很有用的,在本地應用程式也使用

WebService 類的情況下,也需要隱藏某些實現細節。 本地應用程式可以使用任何公用類,但只有具有 WebMethod 屬性的方法可以作為 Web

服務遠端存取。

將下面的代碼添加到您在前面建立的 OydjServices 類:

程式碼:
<WebMethod()> Public Function Add(a As Integer, b As Integer) As Integer
Return(a + b)
End Function

<WebMethod()> Public Function Subtract(A As System.Single, B As System.Single) As System.Single
Return A - B
End Function

<WebMethod()> Public Function Multiply(A As System.Single, B As System.Single) As System.Single
Return A * B
End Function

<WebMethod()> Public Function Divide(A As System.Single, B As System.Single) As System.Single
If B = 0
Return -1
End If
Return Convert.ToSingle(A / B)
End Function




產生 Web 服務: 從產生菜單中,選擇產生。
可通過轉至 OydjService.asmx Web 服務頁來測試此 Web 服務。 如果您的頁面放置在本機電腦上,那麼 URL 將是

http://localhost/OydjService/OydjService.asmx。

運行時 ASP.NET 將返回一個 Web 服務協助頁來說明此 Web 服務。 此頁還讓您能夠測試不同的 Web 服務方法。


二、建立FLASH來調用這個WEBSERVICE

1. 建立個flash
2.拖入2個文字框(textarea),分別命名為:t1、t2
3.拖入個下拉式功能表(comboBox),命名為:ysf,並填加"data"屬性:"[1,2,3,4]"、"Labels"屬性:"[+,-,*,÷]"
4.拖入個動態文字框,命名為:convert
5.拖入個按鈕(button),命名為:search
6.拖入個webserviceConnector 組件
7.在第一幀處編輯"動作",把以下代碼加入

程式碼:
import mx.services.*;

//設定wsdl地址
var wsdlURI = "http://localhost/OydjService/OydjService.asmx?WSDL";
ws = new WebService(wsdlURI);

//點了按鈕後開始串連ws並計算
search.onPress=function() {
//進行計算
switch (ysf.selectedItem.data) {
case 1:
callback = ws.Add(t1.text,t2.text);
break;

case 2:
callback = ws.Subtract(t1.text,t2.text);
break;

case 3:
callback = ws.Multiply(t1.text,t2.text);
break;

case 4:
callback = ws.Divide(t2.text,t1.text);
break;

}
//web服務成功傳回資訊
callback.onResult = function(result) {
convert.text=result;
}
//web服務錯誤傳回資訊
callback.onFault = function(fault) {
for(i in fault){
trace(i+ " : "+fault[i]);
}
}
}





三、示範

(因為我的webservice伺服器不太穩定,有可能不能正確顯示)

三、FLASH原檔案下載
http://cnsxml.com/demo/webs_flash/jj.fla



相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。