互联网的变化,真是风起云涌,我似乎永远都赶不上时代的潮流。
不过这次我想介绍点新鲜的东西,有人说网络会终结全部的桌面软件,这就是RIA,好像是Rich Internet Application的简写。
Flex就是这样一个工具,帮助我们开发RIA,提供丰富的用户交互。
偶前几日用flex做了一个小测试,调用asp.net的WebService.
具体需求如下:
提供一个界面,用来查询某个班级的学生信息。
学生信息表字段:学号、姓名
我这个程序是改写了一个调用Yahoo图片的应用。
看看怎么实现的吧。
1、主程序文件
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" ?backgroundGradientColors="[0xFFFFFF, 0xAAAAAA]" ?horizontalAlign="left" ?verticalGap="15" horizontalGap="15"> ??? <mx:Script> ??????? <![CDATA[ ??????????? import mx.collections.ArrayCollection; ??????????? import mx.rpc.events.ResultEvent; ??????????? //声明一个ArrayCollection,用于存放读取出来的学生信息 ??????????? [Bindable] ??????????? private var photoFeed:ArrayCollection; ??????????? //这个方法用来处理WebService返回的数据,也就是放到上边声明的数组中 ??????? //因为我的WebService返回的是一个DataSet,可以看到这样一个目录结构:Tables.ds.Rows ??????????? private function photoHandler(event:ResultEvent):void { ??????????????? photoFeed = event.result.Tables.ds.Rows as ArrayCollection; ??????????? } ???????? ]]> ??? </mx:Script> <!--调用的WebService wsdl属性声明了一个路径和格式 result属性声明了用来处理结果的方法 operation声明了请求的WebService方法 strWhere是接口的参数名称 searchTerms.text是要查询的字符串 --> <mx:WebService id="StudentService" wsdl="http://localhost:2056/WebServiceTest/GetStudentList.asmx?WSDL" useProxy="false" result="photoHandler(event)"> <mx:operation name="Get"> <mx:request> <strWhere>{searchTerms.text}</strWhere> </mx:request> </mx:operation> </mx:WebService> ?<mx:HBox> ??<mx:Label text="Flickr tags or search terms:" /> ??<mx:TextInput id="searchTerms" /> <!--按钮的click事件,发送了WebService请求--> ??<mx:Button label="Search" click="StudentService.Get.send();" /> ?</mx:HBox> <!-- 这里使用TileList显示查询返回的结果 dataProvider用来绑定数据源 我们在点击按钮查询的之后,无需再绑定一遍数据,这是如何实现的呢,有点搞不明白 这里用到了itemRenderer,可以自定义结果显示的方式,有点类似于.net中的模版控件,下面会介绍 --> ?<mx:TileList width="100%" height="100%" ??dataProvider="{photoFeed}" ??itemRenderer="StudentItem"? direction="vertical"> ?</mx:TileList> </mx:Application>
2、显示Item控件
使用这种方式绑定数据:{data.stu_no}
<?xml version="1.0" encoding="utf-8"?> <mx:HBox xmlns:mx="http://www.adobe.com/2006/mxml" width="300" height="30"> ?<mx:Label text="{data.stu_no}" /><mx:Label text="{data.stu_name}" /> </mx:HBox>
3、再看看WebService是怎么写的。
就是查询出来数据,绑定到DataSet,然后返回
.net会帮我们自动构建XML
[WebMethod] public DataSet Get(string strWhere) { StringBuilder strSql = new StringBuilder(); strSql.Append("select * "); strSql.Append(" FROM student "); if (strWhere.Trim() != "") { strSql.Append(" where stu_course = '" + strWhere+"'"); } return dbHelper.Query(strSql.ToString()); }
OK,这个就是这么简单!欢迎大家多提点建议!
关键字: asp.net Flex webservice
发表评论
相关文章
国内AI资源汇总,AI聊天、AI绘画、AI写作、AI视频、AI设计、AI编程、AI音乐等,国内顺畅访问,无需科学上网。
扫码或点击进入:萤火AI大全
文章分类
最新评论