现在的位置: 首页 > 综合 > 正文

 为flash构建asp.net Webservice

2013年09月27日 ⁄ 综合 ⁄ 共 1790字 ⁄ 字号 评论关闭
 为flash构建asp.net Webservice

看来就属我的动作最慢了,花火已经写了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都可以。如下:

代码拷贝框

[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测试一下,如图所示成功了!

源代码下载

 

抱歉!评论已关闭.