75 dr["Author"] = "吴承恩";
76 dr["Price"] = 39.91;
77 dt.Rows.Add(dr);
78
79 return ds;
80 }
81
82 }
83 }
上面代码片段中分别提供了返回一个对象,DataTable,DataSet对象的方法。这里只需要记住两个关键标识就行,它门是:DataTableType和DataSetType. 下面通过Flex的非可视化组件<mx:RemoteObject>来访问远程对象,OK,下面我们来看看具体怎么来调用。
1 <mx:RemoteObject destination="fluorine" >
2 source="Fluorine.ServiceLibrary.FluorineService"
3 fault="onFaultHandler(event)"
4 <mx:method name="GetBook" result="onGetBookHandler(event)"/>
5 <mx:method name="GetDataTable" result="onGetDataTableHandler(event)"/>
6 <mx:method name="GetDataSet" result="onGetDataSetHandler(event)"/>
7 </mx:RemoteObject>
一、返回对象示例
1 [Binable]
2 private var book:BookVO;
3
4 private function onGetBookHandler(evt:ResultEvent):void
5 {
6 book=evt.result as BookVO;
7 }
通过点击按扭调用远程方法GetBook()完成方法的调用,直接可以将返回结果绑定到界面元素上。
1 <mx:Button label="Book" click="ro.GetBook()"/>
2 <mx:TextInput width="302" text="{boo.Name+book.Author+book.Price}"/>
二、返回DataTable对象
返回DataTable和DataSet,将结果绑定到DataGrid上显示,先看看DataGrid的定义:
1 <mx:DataGrid x="10" y="10" width="543" height="147" dataProvider="{books}">
2 <mx:columns>
3 <mx:DataGridColumn headerText="编号" dataField="Id"/>
4 <mx:DataGridColumn headerText="书名" dataField="Name"/>