用vs.net创建webservice+flash简易计算器

'=====================
' 转载请保留以下信息
'原创:欧阳东杰
' 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 类:

程序代码:

|

 1<webmethod()> Public Function Add(a As Integer, b As Integer) As Integer   
 2Return(a + b)   
 3End Function   
 4  
 5<webmethod()> Public Function Subtract(A As System.Single, B As System.Single) As System.Single   
 6Return A - B   
 7End Function   
 8  
 9<webmethod()> Public Function Multiply(A As System.Single, B As System.Single) As System.Single   
10Return A * B   
11End Function   
12  
13<webmethod()> Public Function Divide(A As System.Single, B As System.Single) As System.Single   
14If B = 0   
15Return -1   
16End If   
17Return Convert.ToSingle(A / B)   
18End Function   
19---  
20  
21  
22  
23生成 Web 服务: 从生成菜单中,选择生成。   
24可通过转至 OydjService.asmx Web 服务页来测试此 Web 服务。 如果您的页面放置在本地计算机上,那么 URL 将是   
25  
26http://localhost/OydjService/OydjService.asmx。   
27  
28运行时 ASP.NET 将返回一个 Web 服务帮助页来说明此 Web 服务。 此页还让您能够测试不同的 Web 服务方法。   
29  
30  
31**二、创建FLASH来调用这个WEBSERVICE**   
32  
331\. 新建个flash   
342.拖入2个文本框(textarea),分别命名为:t1、t2   
353.拖入个下拉菜单(comboBox),命名为:ysf,并填加"data"属性:"[1,2,3,4]"、"Labels"属性:"[+,-,*,÷]"   
364.拖入个动态文本框,命名为:convert   
375.拖入个按钮(button),命名为:search   
386.拖入个webserviceConnector 组件   
397.在第一帧处编辑"动作",把以下代码加入   
40  
41程序代码:   
42---  
43|  import mx.services.*;   
44  
45//设置wsdl地址   
46var wsdlURI = "http://localhost/OydjService/OydjService.asmx?WSDL";   
47ws = new WebService(wsdlURI);   
48  
49//点了按钮后开始连接ws并计算   
50search.onPress=function() {   
51//进行计算   
52switch (ysf.selectedItem.data) {   
53case 1:   
54callback = ws.Add(t1.text,t2.text);   
55break;   
56  
57case 2:   
58callback = ws.Subtract(t1.text,t2.text);   
59break;   
60  
61case 3:   
62callback = ws.Multiply(t1.text,t2.text);   
63break;   
64  
65case 4:   
66callback = ws.Divide(t2.text,t1.text);   
67break;   
68  
69}   
70//web服务成功传回信息   
71callback.onResult = function(result) {   
72convert.text=result;   
73}   
74//web服务错误传回信息   
75callback.onFault = function(fault) {   
76for(i in fault){   
77trace(i+ " : "+fault[i]);   
78}   
79}   
80}   
81---  
82  
83  
84  
85  
86**三、演示**   
87  
88(因为我的webservice服务器不太稳定,有可能不能正确显示)   
89  
90**三、FLASH原文件下载**   
91http://cnsxml.com/demo/webs_flash/jj.fla</webmethod()></webmethod()></webmethod()></webmethod()>
Published At
Categories with Web编程
Tagged with
comments powered by Disqus