Thursday, April 05, 2012 11:23 AM
Hi! i need help to solve my issue with MultiScaleImage and DeepZoomTileSource
I have a Silverlight application, hosted on my own localhost server (it's a sever of our corporate net). In the Xap application directory i have a "source" folder, thats contains all necessary DeepZoom files.
If i run http://localhost, the MultiScaleImage control on web page loads images tiles by setting a DeepZoomImageTileSource to "/source/dzc_output.xml" (as relative Uri in the code-part) and all work fine there.
But if i replace whole "source" folder to my web server (based in web), makes change DeepZoomImageTileSource like in code below, and run project, there is no any tiles i can see:
DeepZoomImageTileSource webSrc = new DeepZoomImageTileSource(new Uri(
"http://mywebserver/source/dzc_output.xml", UriKind.Absolute)); myMSI.Source = webSrc;
If i set same msi source property in xaml (in the editor) - msi loads tiles fine, but if i run project - there is a no any tiles again. I spend a lot of time trying to solve this issue, and no success. Also i never read about same problems - thats strange. I was trying with blank Sl-project, trying to build app on another PC, and still no success.
Another thing - i meesing my rest, thats about my project need to loads DeepZoomImageTileSource dynamically from other sources (on same domain). For example - i have many DZ-sources, and i need change msi source on demand. Whill be it simple? Or i'm waited by bad news?
Please, if somebody know how to solve the problem (at least first part) -let me know. Thanks in advance!
Thursday, April 05, 2012 12:14 PM
Do you have fiddler to trace the calls being made from your SilverLight client?
Does the webserver have clientaccesspolicy.xml / crossdomain.xml files in the root that allow access?
Thursday, April 05, 2012 7:36 PM
Thank you for reply! Yes, i was trace traffic by fiddler - and there is no any traffic generated by my xap-app. Seems like MultiScaleImage doing nothing at all, no traffic, no any message , even no ImageFailed events.
And yes - my server has clientaccesspolicy.xml file in the document root. And i know that it worked - i made simple test to check this (i was able to download some xml-file from my server by WebClient object and parse it ...).
I can't understand why i can't get source from some server.. If is a kind of limitation, but i can't find any reason for it. I find some posts on this site, that guys has same issues with msi, but the posts mostly was early than 2009, i was thinking about, it's young technology, and it's must be all right for now...but i miss.
Thank you for your reply anyway. I will hope that there is any chance to solve it.
Tuesday, April 10, 2012 4:12 PM
Sounds like Cross-Zone to me. Silveright won't go out if it detects different zones.
i.e Silverlight apps run from the internet cannot make calls to internal Intranet locations, ect.
see... URL Access Restrictions in Silverlight
Try publishing Silverlight to the same site the images are published to.
If it still doesn't work, then access the site from a seperate machine, while running fiddler.
If you don't even see a request for the clientaccesspolicy.xml then it is not Cross-Domain.