我有一个操作(我无法更改)启动调用我们的Oracle数据库的线程,以查看某个酒店是否在某个特定日期有空。
如果日期/酒店组合具有可用性,该线程将以DataTable的形式返回有关日期/酒店的信息,该信息将合并到主数据结果表中。是的,我知道......我继承了这个。
所以我试图重写这个操作。我仍然必须在线程中查询Oracle以获取可用性信息,但我想显示返回的数据(以5,10的块为单位?我很灵活),而不是让用户坐在屏幕前面在完整结果吐出到GridView之前最多4分钟。
如何直接从.aspx页面执行此操作,以便我可以进行Web服务调用并使用结果填充网格(JqGrid?)?
如果我没有提供足够的信息或描述我想要实现的目标,请告诉我,我会详细说明。
答案 0 :(得分:2)
Oracle在每行上提供一个名为“rowid”的字段 (http://www.adp-gmbh.ch/ora/concepts/rowid.html)
第一次发送查询时,请发送int(x)以定义所需的最高rownumber值。让服务返回总行数和前x行。
然后,第二次发送查询,获取下一行x行,冲洗并重复。
基本上,您需要每次都为行x到y发送一个ajax查询,直到您将它们全部加载为止。
我也建议使用分页,因为用户通常不希望一次看到数百个结果。