本页面由 Flash 保存计划 从 Internet Archive 存档还原 · 快照 2004-12-09 · 原址 http://www2.flash8.net/teach/744.htm ← Flash 保存计划
 
在flash中构建asp.net webservice
作者:AOL  来源:闪吧
时间: 2004年4月6  类型: 原创  
收藏 发送 评论 <%=votevote%>打印 字体选择:   

看来就属我的动作最慢了,花火已经写了ColdFusion的Webservice,小杰也搞定了java的WebService。不管了,反正还是要写的。运行.net程序,那就要先装好.net framework再说,因为程序要调用framework的基类。关于soap、wsdl和uddi方面的东西我也不想再重复了。现在来做一个很简单的Web服务,也很无聊。就是你输入一个数字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" %>



using System.Web.Services;



public class Fibonacci:WebService

{

[WebMethod]

public int GetSeqNumber(int fibIndex)

{

if(fibIndex<2)

return fibIndex;

int[] FibArray={0,1};



for(int i=1;i<fibIndex;i++)

{

FibArray[1]=FibArray[0]+FibArray[1];

FibArray[0]=FibArray[1]-FibArray[0];



}



return FibArray[1];

}

}

然后把它存成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) {



// Trigger Data Source Behavior

// Macromedia 2003

this._parent.ws.trigger();



}

用Ctrl+Enter测试一下,如图所示成功了!







责任编辑:uufeng
上一篇: 像素字体使用技巧 下一篇: CFMX For F2K4 WebService
 
用ASP.net+SQL Server动态生成xml
asp.net服务器控件(VB.net)
第十一章 把ASP.NET留言本程序上
第三章 设计ASP.NET留言本数据库
第二章 安装ASP.NET运行环境
用DW MX打造基于ACCESS的ASP.NET留
VS2003创建和打开ASP.net 工程的若
Windows 2003 .net配置初级
WebServiceConnector + ASP.Net 简