Как вы, вероятно, знаете, существуют некоторые проблемы, связанные с пересечением границ доменов в Silverlight. Проблемы, которые обсуждались при переполнении стека, например.
Это актуально, потому что обычно вы не можете запрашивать веб-ресурсы в других доменах, что вам нужно сделать здесь.
Я видел один из способов обойти это — использовать веб-службу, которая не имеет такого же ограничения. Таким образом, вы можете создать веб-службу, которая предоставляет byte[] изображения, и заставить веб-службу выполнять вызовы для извлечения изображения и отправки его обратно в Silverlight.
Получив изображение byte[], вы можете прочитать его в асинхронном вызове и установить источник изображения следующим образом.
BitmapImage thumb;
using (MemoryStream stream = new MemoryStream(imgArray))
{
thumb = new BitmapImage();
thumb.SetSource(stream);
}
Другая проблема заключается в том, как создать миниатюру, для этого вы можете google, есть несколько проектов, которые показывают, как это сделать, и некоторые общедоступные веб-службы, которые делают это за вас. Одним из таких примеров является Amazon.
person
Tristan Warner-Smith
schedule
23.02.2009