Я извлекаю данные (изображения, 200-400 КБ) из службы WCF в клиент Silverlight и замечаю, что Silverlight останавливается на долю секунды каждый раз, когда приходит такое сообщение. Это не очень серьезно, но анимация останавливается на некоторое время, и весь пользовательский опыт разрушен.
Время вопроса:
1) Как вы думаете, было бы выгодно использовать вместо него WebClient?
2) Десериализует ли "обычный" клиент WCF в Silverlight (под "нормальным", я имею в виду управляемый событиями) контракты данных в основном (вызывающем) потоке или в фоновом режиме?
3) Считаете ли вы, что накладные расходы, необходимые для десериализации бинарного объекта из контракта данных в XML (+ больший объем данных благодаря XML-кодировке Base64), больше / меньше, чем дополнительная передача данных на сервер (в этом случае контракт данных будет содержать только URL к изображению и чем я мог бы использовать WebClient для его получения - отсюда еще одна поездка)?
4) Можно ли создать изображение из массива byte [] в фоновом потоке (не в потоке пользовательского интерфейса)?
Любая помощь, идеи, предложения высоко ценится.
Спасибо
Karol
PS: я не могу использовать DeepZoom, поскольку бизнес-требования на самом деле не соответствуют сценариям DeepZoom.