ESRI.ArcGIS Map Загрузить динамические KML

Я загружаю карту ESRI и слой KML Все работает отлично!

Проблема: после изменения данных KML (часто изменений) я не могу отобразить новые изменения на карте. Мне нужно принудительно очищать кэш браузера каждый раз. И я попытался обновить слой, не получилось.

Мой код

// Create a new KmlLayer object. 
  ESRI.ArcGIS.Client.Toolkit.DataSources.KmlLayer theKmlLayer = new ESRI.ArcGIS.Client.Toolkit.DataSources.KmlLayer();

  // Set the KmlLayer's ID.
  theKmlLayer.ID = "SampleData";

  // Set the Url of the KmlLayer. Note the Url takes a Uri object!
  theKmlLayer.Url = new Uri("localhost/KML/east.kml");//Here is the New KML Data

  // Need to use a ProxyUrl on the KmlLayer since the service is not hosted locally or on a local network.
  theKmlLayer.ProxyUrl = "http://serverapps.esri.com/SilverlightDemos/ProxyPage/proxy.ashx";

  // Add the KmlLayer to the Map. An automaic refresh of the Map and Legend Controls will occur.
  Map1.Layers.Add(theKmlLayer);

Я попытался theKmlLayer.Refresh();

Нужно ли очищать кэш браузера с помощью кода или можно загрузить новые данные?

1 ответ

Решение

Обычное решение для кэширования KML (а Google кэширует данные в течение нескольких часов на сервере) заключается в использовании случайного или основанного на времени параметра очистки кэша в URL (так что он никогда не бывает прежним).

один пример параметра очистки кэша:

'?dummy=' + (new Date()).getTime()); 
Другие вопросы по тегам