Flex与.NET互操作:基于WebService的数据访问

     Flex提供HTTPService、WebService、RemoteObject和Socket对象来做数据交互。HTTPService,也称XML via HTTPService,就是用get和post方式进行数据传输,同平常的web form提交大致一样,好处是简单、通用性高,可以以任何生成标准XML程序交互,处理大量数据时,速度慢。WebService,通用的叫做SOAP,用database返回数据,没有内建的Pagging功能,不能直接返回DataSet,并且大型数据交互速度慢;比较通用的接口,大多服务器通信都支持。Remoting是基于AMF的数据交互,速度以及性能比较好,数据传输类型比较丰富,传输效率高,对各种后台的支持也比较好;但是需要后台服务端装相应版本的Flash Remoting模块才可以使用。Socket是基于socket通讯,可以建立持久连接,在网游、多人聊天、视频等应用比较有优势。

     本文学习通过WebService访问数据。

     首先准备后台服务端的Web Service:

显示行号 复制代码
  1. public class SimpleService : System.Web.Services.WebService {
    
  2.     public SimpleService () {
        }
        [WebMethod]
        public string HelloWorld() {
            return "Hello World";
        }
    
  3.    [WebMethod]
        public UserInfo GetUserInfo()
       {
            return new UserInfo
            {
                UserID = 1,
                UserName = "Test"
            };
       }
    }
    public class UserInfo
    {
        public int UserID{get; set;}
        public string UserName { get; set; }
    }
  4.  

       检查服务端Web Service:

image

       前端mx:WebService设置:wsdl设置Web Service的URI,load的OnRequest()指定testService调用Web Service的HelloWorld()。onSuccess()方法处理调用成功的信息,onFault()处理调用失败的信息。

显示行号 复制代码
  1. <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
        <mx:Script>
            <![CDATA[
                import mx.rpc.events.FaultEvent;
                import mx.rpc.events.ResultEvent;
                private function onRequest():void{
                    testService.HelloWorld();
                }
    
  2.            
                private function onSuccess(event:ResultEvent):void{
                    trace("访ebService成);
                    trace(event.result.toString());
                }
                
                private function onFault(event:FaultEvent):void{
                    trace("访ebService失);
                    trace(event.message.toString());
                }
            ]]>
        </mx:Script>
        <mx:WebService id="testService" wsdl="http://localhost/SimpleService.asmx?wsdl" useProxy="false" load="onRequest()" >
            <mx:operation name="HelloWorld" result="onSuccess(event)" fault="onFault(event)"/>
        </mx:WebService>
    </mx:Application>

        Debug之后可以看到Console如下的信息:

image

转载于:https://www.cnblogs.com/zhaozhan/archive/2010/06/24/1764753.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值