Hi,
I am using a number of gauges in a dashboard set up (asp.net 2.0, IGv8.1) and occasionally a gauge will not show up when the page loads. If I refresh the page the gauge then shows. My deployment scenario is as follows:
UltraGauge1.DeploymentScenario.ImageType = GaugeImageType.Png; UltraGauge1.DeploymentScenario.DeleteOldImages = true; UltraGauge1.DeploymentScenario.Mode = ImageDeploymentMode.FileSystem; UltraGauge1.DeploymentScenario.ImageURL = "~/images/SalesForce/Gauges/TargetKpi/Gauge_#CLIENT_#SESSION.#EXT"; UltraGauge1.DeploymentScenario.FilePath = "~/images/SalesForce/Gauges/TargetKpi";
The image url on the initial page load is:
http://localhost:4004/BlueCow/images/SalesForce/Gauges/TargetPax/Gauge_ctl00_cphMaster_tpgNational_UltraGauge1_nfctuj45qfghidy0xik0ds55.png?t=128709199775304415
And then when I refresh the page it is:
http://localhost:4004/BlueCow/images/SalesForce/Gauges/TargetPax/Gauge_ctl00_cphMaster_tpgNational_UltraGauge1_nfctuj45qfghidy0xik0ds55.png?t=128709201323972827
You can see how the timestamp (I'm guessing that's what "t" is) has changed slightly. This behaviour happens both locally, and when my site is deployed on a server. I'd say about 95% of the time the gauge image appears correctly, and the other 5% I need to refresh the page. I don't think an image has ever failed to load for me on refreshing.
Any help on this would be greatly appreciated.
Cheers,
James.
It sounds like there's an issue with timing, where the file has been written to the server's file system, but the client request fails to download the image.
What if you set the RefreshInterval property of the gauge? Would that remedy the problem?
Yes its occuring after removing the session, and i just also saw the case where the gauge image was not created(this is rare case).
How this can happen, is something i need to change in code?
does this still happen when you remove the session ID from the FileName under the DeploymentScenario properties?
this seems like it's a timing issue, and that might be related to ASP.NET having to create the Session for the first time, so maybe that would help. or, perhaps initializing the session in global.asax, something like this:
void Session_Start(object sender, EventArgs e)
{
Session["nothing"] = new object();
}
And What about below issue
I am getting missing images, these are copied into the filesystem when browse form direct URL then these images displays,
Below is the grid where dymanically createg gauge control displays
Yes, you could safely remove the Session ID from the filename.