Windows 8 如何在WinRT/Windows8中使用MicrosoftRX框架有效地实现Bing地图

Windows 8 如何在WinRT/Windows8中使用MicrosoftRX框架有效地实现Bing地图,windows-8,windows-runtime,system.reactive,bing,Windows 8,Windows Runtime,System.reactive,Bing,在我的电子商务应用程序中,我需要在Bing地图中绘制我附近的商店,我的另一个要求是在缩放和平移地图期间,我需要根据地图中心更新我的商店。因此,为了实现这一点,我主要选择传统的编码方式。步骤如下所示 首次发布时,我将发送api位置请求,并在地图上绘制商店 在“地图视图更改”事件中,我将根据“地图”当前商店发送附近商店的后续请求。 所以在这个实现过程中,我在一个api请求中获得了大约400个存储。我会把它画在地图上。但当我缩放或平移地图时,它会同时发送多个请求,并尝试更新UI上的图钉,最终它会阻止U

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

  • 首次发布时,我将发送api位置请求,并在地图上绘制商店

  • 在“地图视图更改”事件中,我将根据“地图”当前商店发送附近商店的后续请求。 所以在这个实现过程中,我在一个api请求中获得了大约400个存储。我会把它画在地图上。但当我缩放或平移地图时,它会同时发送多个请求,并尝试更新UI上的图钉,最终它会阻止UI,并且地图在我的应用程序中表现糟糕 在谷歌搜索期间,我发现了许多关于使用微软Rx框架实现类似功能的建议。但是没有得到任何合适的代码样本来实现我的目标。谁能帮助我或指导我解决我的问题。 请记住,我需要在一个请求中平均绘制地图中的400个商店

    问候,


    斯泰兹

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


    当然,您必须调整计时器的持续时间,以便在等待事件完成和向用户提供响应更新之间找到平衡:)

    这是一个非常大的请求!我建议你看看巴特·德斯米特几年前写的《动手实验室》(HOL)。我可以想象“谷歌建议”搜索文本示例的代码/概念与您所需要的非常相似。动手实验室从这里链接:。您可以通过Rx 2.1在此处找到解决方案: