Flex使用Weborb与.NET交互的问题:使用DataSet出现"提供的索引超出范围"异常

        此次项目开发,我们使用了Weborb作为客户端Flash程序与服务器端通信的网关,项目进展到目前,出现了一个令人郁闷的错误,看似是Weborb的一个Bug,但还不确定。到目前为止没有联系官方进行咨询,虽然有此打算。

在项目中我们使用了DataSet作为服务端返回数据的集合,突然出现了“提供的索引超出范围”异常,见图:

        

        点击继续,出现如下错误信息:

        [FaultEvent fault=[RPC Fault faultString="Didn't receive an acknowledge message" faultCode="Server.Acknowledge.Failed" faultDetail="Was expecting mx.messaging.messages.AcknowledgeMessage, but received null"] messageId="1776CDB0-D522-BEFE-A7A8-096E1C43E55F" type="fault" bubbles=false cancelable=true eventPhase=2]

 

        经过辛苦的排查,最终确定了DataSet传输的数据大小有关,这个数据大小容我详细说明一下。

        首先来测试一下,我们用SELECT getdate()来测试。第一次正常,然后,我们一步一步增加getdate()数量,增加到一定程度,就出现了上面图片中的错误。当然,你也可以用一个字段多的表来进行测试。在此我判断,使用DataSet,当查询出来的字段数据累加的长度超过一定限度时就出现上图的错误。这个限度是多少,我没测试。但令人纳闷的是,在出现上图错误的情况下,我们换DataTable来传输数据,就没什么问题。.NET的DataSet、DataTable通过Weborb格式化后对应ActionScript的Object,Arrary类型。

        关于DataSet为何会出现这种情况,我也没分析出个所以然来,只能判断这是Weborb的一个Bug了。哪位仁兄碰到过,欢迎交流。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值