Flex和.NET-将数据导入Flex,WebORB的好方法是什么?网页服务?

时间:2020-03-05 18:47:59  来源:igfitidea点击:

好的,我之前问了一个有关Flex和ADO.NET数据服务的问题,但是没有得到太多的回应,所以我想改一下。有没有人有使用.NET后端构建Adobe Flex应用程序的经验?如果是这样,那么我们使用了什么体系结构,以及使用了什么第三方工具(如果有)。我已经读过一些关于使用WebORB进行Flex远程处理的信息,但似乎比它应该的要复杂得多,Web服务是否是一个适当的选择?

解决方案

回答

我主要使用普通的ASP.NET页面,这些页面返回XML的情况主要是单向通信(来自ASP.NET的数据-> Flex / Flash)。 Flex端仅使用URLLoader来访问ASP.NET页,并将结果加载为XML。

如果通信需要更多一些双向信息(可以说要向ASP.NET发送多个参数),那么我已经使用了标准的ASP.NET Web服务。

我从未使用过WebOrb或者Flex远程处理,因为我从未真正需要服务器和SWF之间的这种类型的交互。

希望能有所帮助。

回答

我相信Web服务实际上更复杂,更严格。我们无法创建有状态的Web服务,由于XML的冗长性,数据交换相当慢。使用WebORB进行开发并不难。基本上可以归结为开发程序集并将其部署到启用了Weborb的ASP.NET应用程序的/ bin文件夹中。完成后,我们可以使用Flex的RemoteObject API调用.NET类。例如:

var ro:RemoteObject = new RemoteObject( "GenericDestination" );
ro.source = "com.bar.FooService"
ro.foo.addEventListener( ResultEvent.RESULT, gotFooResult );
ro.foo();

public function gotFooResult( evt:ResultEvent ):void
{
   //  evt.result contains the return value;
}

使用-service编译器参数编译Flex构建器项目非常重要。我们可以在Flex Builder的" Flex编译器"项目属性中添加:

-services c:/Inetpub/wwwroot/weborb30/web-inf/flex/services-config.xml

如果我们指向该路径,请确保将DLL部署到:

c:/Inetpub/wwwroot/weborb30/bin