Flex通过Web Service操作MySQL
2008-12-18 21:05 libiver 阅读(167) 评论(0) 编辑 收藏 举报Flex通过Web Service操作MySQL
项目中遇到的问题一步一步解决,也慢慢总结这过程中的点点滴滴学习笔记,今天把整个串起来,算是一个完整的项目解决方案。其实还有很多问题需要在项目中解决,比如camera capture,最后生产pdf格式的数据分析结果文件。
一些准备知识可以参看以下两个链接:
一:ASP.NET连接MySQL数据库,可以参考http://blog.csdn.net/li_007/archive/2008/12/10/3486614.aspx
二:Web Service操作数据库,可以参考http://blog.csdn.net/li_007/archive/2008/12/15/3525627.aspx
好了,可以先看看效果,截图如下:
图一 customer表
图二 Web Service页面
图三 执行GetCustomerInfo得到的数据
图四 Flex中DataGrid显示绑定的数据
首先,在Web Service中GetCustomerInfo函数的实现,是一个查询所有,然后返回XML格式的string
同样也先把Flex实现代码贴出来,再解释。
结合上面的代码,首先先看mx:WebService组件,设置组件id,关键是设置wsdl,应该是你webService页面的url加“?WSDL",然后是mx:operation组件,注意name属性值一定要与WebService服务函数名一样,resultFormat从字面意思就知道是设置返回结果的类型,我们返回的是XML格式的一个string,所以是object,不是xml,最后我加了个result事件,左右待会解释。
DataGrid的设置见代码,由于想要绑定获取数据,而我们获取的是一个内容为xml格式的string,这是没法绑定的,所以就在mx:operation组件中添加了对result事件的相应,在这个事件函数中将string转化成xml对象,这样才可以很好地与DataGrid的columns来绑定。为了转化,首先Bindable了一个XML对象。
好了,设置,显示等等都做好了,现在需要解决的问题是怎么样去调用访问Web Service,mx:webservice组件方法如下:
wsCustomerInfo.GetCustomerInfo.send();//注意语法
好了,整个过程就是这样的,关键绑定过程不要出错,不然得到了数据显示不出来。