I'm fetching data (images, 200-400kb) from WCF service to Silverlight client and notice that the Silverlight stops for a fraction of second every time such message arrive. It's not really serious but the animation stops for a while and the whole user experience is ruined.
Question time:
1) Do you think it would be beneficial to use WebClient instead?
2) Does "normal" WCF client in Silverlight (by "normal" I mean event-driven scenario) deserialize data contracts in main (calling) thread or in the background?
3) Do you think overhead necessary to deserialized binary object from data contract in XML (+ bigger data size thanks to Base64 XML encoding) is bigger/smaller than additional round trip to the server (in which case data contract would only contain URL to the image and than I could use WebClient to get it - hence another trip)?
4) Is it possible to create Image from byte[] array in the background thread (not UI thread)?
Any help, ideas, suggestions much appreciated.
Thanks,
Karol
PS: I cannot use DeepZoom because business requirements don't really match DeepZoom scenarios.