微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

flex中调用webservice的两种方法

1,用C#写好一个webservice,包含两个方法

    [WebMethod]
    public string HelloWorld()
   {
        return "Hello World";
    }

    [WebMethod]
    public int GetSum(int a,int b)
    {
        int c = 0;
        c = a + b;
        return c;
    }

2,通过mxml配置,调用

	<fx:Declarations>
		<!-- 将非可视元素(例如服务、值对象)放在此处 -->
		<s:WebService id="myWebService" wsdl="http://localhost:4358/WebServicetest/WebService.asmx?wsdl">
				<s:operation name="GetSum" resultFormat="object" result="myresultTwo(event)"/>
				<s:operation name="HelloWorld" resultFormat="object" result="myresultTwo(event)"/>
		</s:WebService>
	</fx:Declarations>
	<s:Button id="myOne" x="184" y="177" width="131" height="47" label="Methodone"
			  click="myOne_clickHandler(event)"/>
	<s:Button id="myTwo" x="393" y="177" width="131" height="47" label="MethodTwo"
			  click="myTwo_clickHandler(event)"/>
	<fx:Script>
		<![CDATA[
			import mx.controls.Alert;
			import mx.events.FlexEvent;
			import mx.rpc.events.ResultEvent;
			import mx.rpc.soap.WebService;
			
			public function myresultOne(event:ResultEvent):void
			{
				Alert.show(event.result.toString());
			}
			public function myresultTwo(event:ResultEvent):void
			{
				Alert.show(event.result.toString());
			}

			protected function myOne_clickHandler(event:MouseEvent):void
			{
				// Todo Auto-generated method stub
				myWebService.HelloWorld();
			}
			
			protected function myTwo_clickHandler(event:MouseEvent):void
			{
				// Todo Auto-generated method stub
				myWebService.GetSum(7,9);
				
			}
			
		]]>
	</fx:Script>

3,通过AS调用

			protected function application1_creationCompleteHandler(event:FlexEvent):void
			{
				// Todo Auto-generated method stub
				var myser:WebService=new WebService();
				myser.wsdl="http://localhost:4358/WebServicetest/WebService.asmx?wsdl";
				myser.loadWSDL();
				myser.getoperation("HelloWorld").addEventListener(ResultEvent.RESULT,myresultOne);
				myser.getoperation("HelloWorld").send();
				myser.getoperation("GetSum").addEventListener(ResultEvent.RESULT,myresultTwo);
				myser.getoperation("GetSum").send(2,3);	
			}
			
			public function myresultOne(event:ResultEvent):void
			{
				Alert.show(event.result.toString());
			}
			public function myresultTwo(event:ResultEvent):void
			{
				Alert.show(event.result.toString());
			}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐