28

在我的电子商务应用程序中,我需要在 Bing 地图中绘制我附近的商店,而我的另一个要求是在缩放和平移地图时,我需要根据地图中心更新我的商店。因此,为了实现这一点,我主要选择传统的编码方式。步骤如下。

  1. 初始启动我将发送位置的 api 请求,并将在地图上绘制商店。

  2. 在 Maps ViewChanged 事件中,我将根据地图当前商店发送对附近商店的后续请求。所以在这个实施过程中,我在单个 api 请求中获得了大约 400 个商店。我会在地图上绘制这个。但是当我缩放或平移地图时,它会同时发送多个请求并尝试更新 UI 上的图钉,最终它会阻止 UI 并且 Map 在我的应用程序中表现得非常糟糕。

在 Google 搜索期间,我发现了许多关于使用 Microsoft Rx 框架来实现类似功能的建议。但是没有得到任何合适的代码示例来实现我的目标。谁能帮助我或指导我解决我的问题。请记住,我需要在一次请求中平均在地图中绘制 400 家商店。

问候,

斯特兹。

4

1 回答 1

2

听起来您只是用多个请求使连接和/或服务器饱和,因为缩放时事件发生了。您要做的是避免直接从该事件进行 API 调用。相反,您可以只启动一个计时器(或重新启动,如果已经运行)。这样,您可以缓冲那些重复的事件,直到用户停止缩放,然后只提交一个 API 请求。

当然,您必须使用该计时器的持续时间来找到等待事件完成和为用户提供响应更新之间的平衡:)

于 2013-08-26T14:30:40.710 回答