[2011-04] Flex调用C# Webservice
关键字: flex数据交互 终于试出flex用WebService的方式取得组件的数据系结。后端用Turbo C#开新WebService专案,贴上下面二个简单的MethodC#代码1. 2.public string [] HelloWorld() 3.{ 4. string [] arr=new string; 5. arr="字符串A"; 6. arr="字符串二"; 7. arr="字符串三"; 8. return arr; 9.} 10. 11.public double Calc(double r) 12.{ 13. return 2 * r * Math.PI; 14.}public string [] HelloWorld(){ string [] arr=new string; arr="字符串A"; arr="字符串二"; arr="字符串三"; return arr;}public double Calc(double r) { return 2 * r * Math.PI;} 然后用 Cassini web server方式执行。前端用flex MXML Application贴上下面程序代码Mxml代码1.<?xml version="1.0" encoding="utf-8"?> 2.<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical"> 3. <mx:Script> 4.<! 9. private var myData:ArrayCollection; 10. 11. private function resultHandler(event:ResultEvent):void { 12. myData = event.result as ArrayCollection; 13. } 14.]]> 15. </mx:Script> 16. <mx:WebService id="myService"17.wsdl="http://127.0.0.1:8080/WebServiceApplication3/WebService1.asmx?wsdl"> 18.<mx:operation name="HelloWorld" result="resultHandler(event)"/> 19.<mx:operation name="Calc"> 20. <mx:request> 21. <r>{radius.text}</r> 22. </mx:request> 23. </mx:operation> 24. </mx:WebService> 25. 26. <mx:List id="myList" dataProvider="{myData}" width="206"/> 27. <mx:Label text="{myList.selectedItem}"/> 28. <mx:TextInput id="radius"/> 29. <mx:Button label="取得数组" click="myService.HelloWorld.send()"/> 30. <mx:Text text="{myService.Calc.lastResult}" /> 31. <mx:Button label="计算" click="myService.Calc.send();"/> 32.</mx:Application><?xml version="1.0" encoding="utf-8"?><mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical"> <mx:Script><! private var myData:ArrayCollection; private function resultHandler(event:ResultEvent):void { myData = event.result as ArrayCollection; }]]> </mx:Script> <mx:WebService id="myService"wsdl="http://127.0.0.1:8080/WebServiceApplication3/WebService1.asmx?wsdl"><mx:operation name="HelloWorld" result="resultHandler(event)"/> <mx:operation name="Calc"> <mx:request> <r>{radius.text}</r> </mx:request> </mx:operation> </mx:WebService><mx:List id="myList" dataProvider="{myData}" width="206"/> <mx:Label text="{myList.selectedItem}"/> <mx:TextInput id="radius"/> <mx:Button label="取得数组" click="myService.HelloWorld.send()"/> <mx:Text text="{myService.Calc.lastResult}" /> <mx:Button label="计算" click="myService.Calc.send();"/> </mx:Application> 执行之后,便用WebService方式向后端取得HelloWorld及Calc二个method的回传值。关键点在lastResult若是数组需以as ArrayCollection转型成ArrayCollection来承接。
页:
[1]