В Silverlight будет слишком долго загружаются приложения?

Я думаю, что Silverlight 4.0 будет хорошим выбором для создания нашего бизнес-приложения.

тем не менее, одна часть, которую я боюсь, - это загрузка. Если я правильно понимаю, Silverlight компилирует все страницы в один двоичный файл, который загружается на клиент во время загрузки. Теперь все в порядке с несколькими страницами, но если я достигну сотен страниц, это время загрузки будет очень длинным? Когда я смотрю примеры на Infragistics и Telerik, они занимают хорошие 10-15 секунд чтобы загрузить только эти несколько примеров. Я считаю это неприемлемым.

есть ли способы обойти это?

3 ответов


во - первых-что, вероятно, раздуть размер xap являются DLL и любые импортированные активы ваших собственных (большие изображения и т.д.). Поэтому, если у вас есть относительно однородный сайт, основанный на одном и том же виде / шаблонах, добавление новых страниц не увеличит общий размер, так как необходимые компоненты уже находятся в xap, а добавления будут в основном состоять из текста.

конечно, если новые страницы имеют функциональные возможности / используют элементы управления или компоненты, требующие дополнительных DLL включено, что будет отягощать его, но когда вы говорите о один приложение, которое может вырасти до сотен страниц, я предполагаю, что они будут несколько последовательных.

при необходимости вы также можете динамически загружать содержимое приложения Silverlight. Если вы можете отделить контент и / или дескрипторы / активы контента от кода, Вы должны увидеть, можно ли хранить это в базе данных или другом репозитории и извлекать его только при необходимости.

Это тоже можно динамически загружать другие xaps во время выполнения, что позволяет изначально иметь легкую загрузку xap, а затем вводить другие по требованию и, таким образом, распределять время загрузки на основе того, что требуется пользователю во время "сеанса".


Да, это действительно проблема. Но двоичные файлы (XAP-файлы, которые на самом деле являются просто zip-файлами DLL) подаются через стандартный HTTP, поэтому они, безусловно, могут быть кэшированы (как настраивается через ваш веб-сервер). Таким образом, первая загрузка может занять 15 секунд, но все последующие загрузки не должны иметь времени загрузки (если вы не выпустите обновление).

кроме того, примеры Telerik имеют все свои библиотеки DLL, на которые ссылаются, и вы можете устранить те, которые вам не нужны в вашем собственном проекте уменьшить общий размер.

есть несколько продуктов и методов для добавления дополнительного сжатия в xaps (так как они просто zip-файлы на самом деле)

http://www.google.com/search?q=silverlight + XAP + уплотнитель.....

Я думаю, что Telerik предлагает один такой инструмент тоже.

наконец, в 4.0 вы можете установить определенные системные библиотеки DLL для загрузки по требованию, а не спереди, что может улучшить время загрузки (но я лично не использовал это) - -это в свойствах проекта.


также можно использовать несколько файлов xap, чтобы вы могли разделить свое приложение на отдельные файлы xap.

Я никогда не пробовал это, но если вы google, то вы найдете много статей. Е. Г.

http://dotplusnet.blogspot.com/2010/09/how-to-load-multiple-xap-files-in.html