ThinkGeo.com    |     Documentation    |     Premium Support

Concurrency issues

Hi,


I am having issues when using IFRAME to publish map suite mvc based application.   I am getting time to time the message "not open" .  I think that could be linked with the fact that the same web page with the map is hit at the exact same time......


the second issue is why  am I getting a pink overlay for my heat map  an that when I havn't used or refresh the web page for some time???  after that I cannot get the pink overlay to go away... I have to clear the browser history.????


 


thanks for your support.


 


jm



   
                <iframe class="MapX" src="@Url.Content("MapX/MapX?1")" seamless="seamless"></iframe>
            
            
            
            
                <iframe class="MapX" src="@Url.Content("MapX/MapX?2")" seamless="seamless"></iframe>
            



   [MapActionFilter]
        [HttpPost]
        public void getAllCtHeatMap(Map map, GeoCollection<object> args)
        {
            Collection<Feature> _tempFeatures = new Collection<Feature>();
            _tempFeatures = _DataRepository.get_all_ct();

            Proj4Projection proj4_SPHMCT = new Proj4Projection();
            proj4_SPHMCT.InternalProjectionParametersString = Proj4Projection.GetEpsgParametersString(4326); //WGS84(Longitude/Latitude)
            proj4_SPHMCT.ExternalProjectionParametersString = Proj4Projection.GetGoogleMapParametersString(); //Spherical Mercator projection(Google Map, Bing Map etc)
            proj4_SPHMCT.Open();

            HeatLayer heatLayer = (HeatLayer)map.StaticOverlay.Layers[0];

            InMemoryFeatureSource _featureSource = new InMemoryFeatureSource(this.FeatureSourceColumns(_tempFeatures[0]), _tempFeatures);
            _featureSource.Open();
            _featureSource.Projection = proj4_SPHMCT;

            HeatStyle heatStyle;
            heatStyle = new HeatStyle();
            heatStyle.RequiredColumnNames.Add("SLS_YTD_DLR_AMT");
            heatStyle.IntensityColumnName = "SLS_YTD_DLR_AMT";
            heatStyle.IntensityRangeStart = 1.00D;
            heatStyle.IntensityRangeEnd = 100000.00D;
            heatStyle.Alpha = 128;
            heatStyle.PointIntensity = 512;
            heatStyle.PointRadius = (double)100000D;
            heatStyle.PointRadiusUnit = DistanceUnit.Meter;
            heatLayer.Name = "SLS_YTD_DLR_AMT";
            heatLayer.HeatStyle = heatStyle;
            heatLayer.IsVisible = true;
            heatLayer.FeatureSource = _featureSource;

            map.StaticOverlay.Redraw();
            return;
        }

 
        @{
            Html.ThinkGeo().Map("MapX1", System.Web.UI.WebControls.Unit.Percentage(100),
                                        System.Web.UI.WebControls.Unit.Percentage(100))
            .MapBackground(new BackgroundLayer(new GeoSolidBrush(GeoColor.StandardColors.White)))
            .CurrentExtent(-14148507.181077, 6271924.7354557, -5114687.7715466, 3097880.0780531)
            .MapUnit(GeographyUnit.Meter)
            .MapTools(mapTools =>
        {
            mapTools.MouseCoordinateMapTool().Enabled(false);
            mapTools.PanZoomBarMapTool().Enabled(false);
            mapTools.LoadingImageMapTool().Enabled(false);
            mapTools.TouchMapTool().Enabled(true);
            mapTools.MouseMapTool().Enabled(true);
            mapTools.KeyboardMapTool().Enabled(false);
            mapTools.ScaleLineMapTool().Enabled(false);
            mapTools.PanZoomMapTool().IsGlobeButtonEnabled(false).Enabled(false);
        })
        .StaticOverlay(overlay =>
        {
            HeatLayer Heat = new HeatLayer();
            overlay.Layer("Heat", Heat).IsVisible(true)
                .IsBaseOverlay(false)
                .TileType(TileType.SingleTile);
        })
        .DynamicOverlay(overlay =>
        {
        })
        .CustomOverlays(overlays =>
        {
            overlays.WmsOverlay("WMS Overlay")
            .Parameters(paras =>
            {
                paras.Add("LAYERS", "WorldMapKitRL_SPHMCT");
                paras.Add("STYLES", "DEFAULT");
                paras.Add("SRS", "EPSG:4326");
            })
            .ServerUris(uris =>
            {
                uris.Add(new Uri("GEOWMS.USAC.MMM.COM:83/WmsHandler.axd"));
                uris.Add(new Uri("GEOWMS.USAC.MMM.COM:83/WmsHandler.axd"));
                uris.Add(new Uri("GEOWMS.USAC.MMM.COM:83/WmsHandler.axd"));
                uris.Add(new Uri("GEOWMS.USAC.MMM.COM:83/WmsHandler.axd"));
            })
            .TileType(TileType.SingleTile)
            .IsBaseOverlay(true);
        })
        .Render();
        }
    


Hello Jean-marie, 
  
 I tried added two iframes on a razor view and everything works fine, I have some confused about " I think that could be linked with the fact that the same web page with the map is hit at the exact same time", can you provide a sample to us? 
  
 And about pink tile problem, there are two ways you can try to find the root cause, one is right click the pink tile and check the property, copy the url directly request in the IE browser, see what’s the result. Another way is the the heatlayer.DrawingException=ThrowException, and check what’s the exception says. 
  
 Let us know your queries. 
  
 Regards, 
  
 Gary