為flash構建asp.net Webservice

來源:互聯網
上載者:User

看來就屬我的動作最慢了,花火已經寫了ColdFusion的Webservice,小傑也搞定了java的WebService。不管了,反正還是要寫的。關於soap、wsdl和uddi方面的東西我也不想再重複了。現在來做一個很簡單的Web服務,也很無聊。運行.net程式,那就要先裝好.net framework再說,因為程式要調用framework的基類。就是你輸入一個數字N,然後由伺服器計算返回這個數位斐波那契數數列的第N項的值。

你學電腦不知道這個數列?我faint!好了,下面是斐波那契的介紹(Copy過來的)

斐波那契(斐波那契是意大利數學家,約1170一約1250年) 數列是由一個“兔子問題”引起的,即:

 假定一對大兔子每一個月可以生一對小兔子,而小兔子出生後兩個月就有生殖能力.問從一對大兔子開始,一年後能繁殖成多少對兔子?這就產生斐波那獎數列:

     1,1,2,3,5,8,13,21,34…

其規律是從第三項起,每一項都是前兩項的和.用遞推公式表達就是

a1=a2=1,

an=an+1十an-2(n>=3),

      OK,明白了繼續上路。我們就為實現上面的功能,寫一個WebService程式,管你用什麼軟體編輯,用NotePad都可以。如下:

代碼拷貝框
<%@ Webservice Language="C#" class="Fibonacci" %><br />using System.Web.Services;<br />public class Fibonacci:WebService<br />{<br /> [WebMethod]<br /> public int GetSeqNumber(int fibIndex)<br /> {<br /> if(fibIndex<2)<br /> return fibIndex;<br /> int[] FibArray={0,1};<br /> for(int i=1;i<fibIndex;i++)<br /> {<br /> FibArray[1]=FibArray[0]+FibArray[1];<br /> FibArray[0]=FibArray[1]-FibArray[0];<br /> }<br /> return FibArray[1];<br /> }<br />}
[Ctrl+A 全部選擇 然後拷貝]

然後把它存成fibonacci.asmx.,尾碼名為asmx。用IIS遊覽http://localost/fibonacci.asmx,則進入Fibonacci協助頁面。:

點擊本文第一行的Service Description則進入Web服務描述頁面,就是WSDL頁面http://localhost/fibonacci.asmx?WSDL。:

在協助頁中,GetSeqNumber就是你的服務方法,點擊GetSeqNumber進入http://localhost/fibonacci.asmx?op=GetSeqNumber。:

你可以在參數輸入框進行通過HTTP POST協議的測試。比如你輸入10,得出的結果就是:

<?xml version="1.0" encoding="utf-8" ?>
<int xmlns="http://tempuri.org/">55</int>

從中可以看出答案是55。

下面是flash中的了。 首先建立介面。一共有四個組件要拖入情境中,請看下面的列表。

組件類型

執行個體名稱

作用

WebServiceConnector

ws

連結WebService服務,並且和textInput組件、label組件進行資料繫結。

TextInput

data

輸入資料n

Label

answer

得出斐波那契數列第n項值

Button

bt

資料觸發器

建好後:

點擊ws,用Alt+F7彈出組件屬性偵測器。在參數選擇項中定義的參數:

然後Binding項中定義輸入參數,和得到的結果。:

OK,點擊params.fibIndex,在Bind to 項選擇TextInput組件執行個體data。:

因為參數fibIndext是由輸入框所得。然後再定義results的Bind to 綁定到Label組件執行個體answer上。這時所有的資料繫結工作都作完了。

最後在按鈕上加一個命令(我的是由Baheviors自動產生的,原因――懶):

on (click) {
      this._parent.ws.trigger();
}

用Ctrl+Enter測試一下,成功了!

原始碼下載

聯繫我們

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

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

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.