1、使用FluorineFx网关实现远程访问关于远程访问在本系列文章中陆续的写了不少示例了,本文没有准备深入的去探讨,为了巩固FluorineFx网关的学习和使用。于此,本文将使用FluorineFx网关来提供数据服务等多项功能来介绍通过FluorineFx实现远程访问的相关知识点。 FluorineFx提供的远程访问包括有很多方面的知道点,本文只介绍其中的三个知识点:访问远程对象返回对象,返回DataTable,返回DataSet对象.FluorineFx安装包里自带有相关的示例程序,要学习更多可直接参考这些示例程序.在实现访问前我们同样来做一些准备工作,建立好远程对象,如下:1namespac
2、eFluorine.ServiceLibrary23publicclassBook45publicintIdget;set;6publicstringNameget;set;7publicstringAuthorget;set;8publicdoublePriceget;set;910下面是提供Flex访问的远程对象:Code1namespaceFluorine.ServiceLibrary23RemotingService4publicclassFluorineService56/7/返回一个简单对象8/9/10publicBookGetBook()1112returnnewBook1314
3、Id=1,15Name=三国演义,16Author=罗贯中,17Price=10018;192021/22/返回DataTable对象23/24/25DataTableType(Fluorine.ServiceLibrary.Book)26publicDataTableGetDataTable()2728DataTabledt=newDataTable(Book);29dt.Columns.Add(Id,typeof(int);30dt.Columns.Add(Name,typeof(string);31dt.Columns.Add(Author,typeof(string);32dt.Col
4、umns.Add(Price,typeof(double);3334DataRowdr=dt.NewRow();35drId=1;36drName=三国演义;37drAuthor=罗贯中;38drPrice=52.30;39dt.Rows.Add(dr);4041dr=dt.NewRow();42drId=2;43drName=西游记;44drAuthor=吴承恩;45drPrice=39.91;46dt.Rows.Add(dr);4748returndt;495051/52/返回DataSet对象53/54/55DataSetType(Fluorine.ServiceLibrary.Book
5、)56publicDataSetGetDataSet()5758DataSetds=newDataSet(DS);59DataTabledt=ds.Tables.Add(Books);60dt.Columns.Add(Id,typeof(int);61dt.Columns.Add(Name,typeof(string);62dt.Columns.Add(Author,typeof(string);63dt.Columns.Add(Price,typeof(double);6465DataRowdr=dt.NewRow();66drId=1;67drName=三国演义;68drAuthor=罗贯
6、中;69drPrice=52.30;70dt.Rows.Add(dr);7172dr=dt.NewRow();73drId=2;74drName=西游记;75drAuthor=吴承恩;76drPrice=39.91;77dt.Rows.Add(dr);7879returnds;80818283上面代码片段中分别提供了返回一个对象,DataTable,DataSet对象的方法。这里只需要记住两个关键标识就行,它门是:DataTableType和DataSetType. 下面通过Flex的非可视化组件来访问远程对象,OK,下面我们来看看具体怎么来调用。12source=Fluorine.Servi
7、ceLibrary.FluorineService3fault=onFaultHandler(event)4567一、返回对象示例1Binable2privatevarbook:BookVO;34privatefunctiononGetBookHandler(evt:ResultEvent):void56book=evt.resultasBookVO;7通过点击按扭调用远程方法GetBook()完成方法的调用,直接可以将返回结果绑定到界面元素上。12二、返回DataTable对象返回DataTable和DataSet,将结果绑定到DataGrid上显示,先看看DataGrid的定义:12345
8、678DataGrid的数据源为定义的一个ArrayCollection对象,详细如下:1Binable2privatevarbooks:ArrayCollection;1privatefunctiononGetDataTableHandler(evt:ResultEvent):void23books=evt.resultasArrayCollection;4三、返回DataSet对象1privatefunctiononGetDataSetHandler(evt:ResultEvent):void23books=evt.resultasArrayCollection;4如上便完成了通过FluorineFx网关来实现远程访问,下面是完整的Flex端代码,实现很简单这里就不作详细讲解:123434353637383940414243444546474849505152source=Fluorine.ServiceLibrary.FluorineService53fault=onFaultHandler(event)5455565758
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1