我们正在开发一个 WPF 应用程序,主要使用 WPF Bing Maps 控件。
我们有多个切片图层,可以在运行时打开或关闭。瓦片层使用自定义瓦片源检索它们的数据,因此我们可以更好地控制返回的 uri。
当应用程序启动时,多个 tilelayers 是可见的,导致调用我们的 restservices 来检索切片。服务检查数据库中的图像,如果存在,则返回图像,如果不存在,则生成图像,存储它们并返回它们。到目前为止,它就像一个魅力。
现在有以下两种情况:数据库由于某种原因被清除->服务只是在调用时重新创建图像,然后返回它们。这里没问题。
如果有人清除了 IE 缓存(客户端),而应用程序仍在运行,则缩放/移动地图。之前加载的瓷砖消失了,并且不会回来。进一步放大时,它确实检索到之前未加载的图块,但在图块层中留下了很大的间隙。
解决这个问题的唯一方法似乎是关闭应用程序,清除 IE 缓存,清除 DB,然后重新启动。是什么导致了这种行为?为什么会加载看似空的图像?
在对一个选项进行一些挖掘之后,将为 uri 提供一个刻度参数,因此它总是会检索新的图块。但这会带来很大的性能损失。
关于如何解决这个问题的任何建议?
提前致谢。