ThinkGeo.com    |     Blog    |     Wiki    |     Support

Avoiding Browser Cache

Is there any way to avoid browser cache when using serveroverlay.



my application has the ability to modify (add, edit, delete object/feature), and I want it to refresh the map so it shows the results of the modification.

the problem is after I modified (add/edit/delete) an object on the Map File (I achieved this via wcf service to modify the map file), the screen doesn’t shows the results and nothing changed on the screen. even if I refresh the aspx page (via url bar or even force refresh the page) to reload the ServerOverlay it won’t change. only after I delete history/cache in the browser (via browser setting), I could see the results.



I don’t know what technique you used in the MapSuite, but I think the  way you show the map is using the tile (image) and load it via http and I think that’s the problem with browser’s optimization to cache image.



I don’t want my user to delete browser cache manually every time they edit the map, So is there any way to solve my problem?



Thanks

Hi Syarief, 
  
 Thanks for your post, would you please get the latest dll(7.0.246.0) and try it again with following code: 
  
 ServerLayerOverlay.ClientCache=null; 
  
 if you have any more question , please feel free to let us know. 
  
 Best Regards 
  
 Summer 
  


Hi Summer, 
  
 where do i put the ClientCache = null 
  
 this is my code to load Tab file in aspx.cs 
 
ServerLayerOverlay _layerOverlay = new ServerLayerOverlay(ServerOverlayName);
_layerOverlay.ServerCache = new ServerCache(MapHelper.TabFileDirectory + "/");
SmartMapConnector.ServerLayerOverlays.Add(ServerOverlayName, _layerOverlay);
TabFeatureLayer.BuildIndexFile(tabFilePath, BuildIndexMode.Rebuild);
TabFeatureLayer _baseLayer = new TabFeatureLayer(tabFilePath);
_layerOverlay.Layers.Add(ServerLayerName, _baseLayer);
 
  
 should i remove the ServerCache initiation to make it work? 
  
 Thanks.

Ooh, and one more thing. 
  
 where I can find the update (7.0.246.0)? 
  
 i don’t see it in my helpdesk.thinkgeo.com 
  
 Thanks.

Hi Syarief, 
  
 Please replace _layerOverlay.ServerCache = new ServerCache(MapHelper.TabFileDirectory + "/"); to _layerOverlay.ServerCache = null; is OK. 
  
 Please wait our helpdesk update the dll to 246 or higher version. 
  
 Regards, 
  
 Don

Hi Don, 
  
 I’ve tried to set _layerOverlay.ServerCache = null;, but it didn’t work. 
  
 when will you update the 246 version? 
  
 Thanks.

Hi Syarief, 
  
 Did you try the latest dll 7.0.254.0(development build)? in this version the layerOverlay.ClientCache exists, would you please try it.  
  
 About _layerOverlay.ServerCache = null; would you please replace it  
  
 with 
  
 _layerOverlay.ClientCache = null; 
  
 if you have any more question , please feel free to let us know. 
  
 Best Regards 
  
 Summer

Hi Summer, 
  
 I haven’t download the 7.0.254 version yet, 
 I will try it then. 
  
 Thanks.

Hi Summer, 
  
 I just check my download portal, but the latest version is 7.0.252.0 either in "My Products Download" or "Evaluation Daily Builds" tab. 
  
 Please update. 
  
 Thanks.

Hi Syarief, 
  
 I have tested 7.0.252.0, it should have contained this API. Sorry we have a typo of the API in 252 version, but it have been solved in the latest version. 
  
 Please try to use it first, and get latest for update it in future. 
  
 Regards, 
  
 Don 


Hi Don,



my bad for not replying this thread for long time, I’m sorry.

Thanks before, setting client cache to null works great.



Thanks.

Hi Syarief, 
  
 That’s all right, if any more questions, please feel free to let us know. 
 Thanks, 
 Troy