我在使用 XtraReports 工具和有关性能的 Web 服务时遇到了潜在问题。在 Windows 窗体应用程序中。
我知道 XtraReport 通过加载第一页然后继续在后台加载其余页面来加载大型数据集(我将大型数据集理解为 +10,000 行),但这一切都是通过手头的数据源完成的。那么如果这个数据源必须通过一个需要序列化数据以便将其发送到客户端的 Web 服务会发生什么?
场景如下:
我有一个 Windows 形式的瘦客户端,它调用 Web 服务,它接受该调用并通过反射实例化相应的类并调用所需的方法(请注意,这个架构是继承的,我对此几乎别无选择,我必须使用它)。所以我将有一个类从数据库中获取数据并通过 Web 服务接口将其发送到客户端。这些数据可以是 DataSet、SqlDataReader(还要注意我们使用的是 SQL Server 2000,但到年底可能是 2008)、DataTable、XML 等。
如果结果数据集很大,序列化+传输的时间会比较长,然后渲染报表会增加一些时间,降低整体性能。
我知道有可能使用流式视频之类的东西,但可以通过网络服务流式传输数据,但我没有线索信息可以尝试围绕它做一些事情。
你怎么看待这件事?请让我知道您可能有的任何问题,或者如果我需要写更多信息以更好地说明问题。
谢谢!