Развертывание Silverlight в браузере - PullRequest
3 голосов
/ 24 мая 2011

У меня есть приложение для огромного бизнеса, которому нужно много страниц, элементов управления и т. Д. Файл .xap легко занимает до 50 МБ.Я замечаю, что каждый раз, когда я загружаю страницу, файл .xap загружается на мой локальный компьютер.Тем не менее, мои пользователи могут использовать сеть 3G для подключения, поэтому это должно быть очень медленно, если мы загружаем приложение каждый раз, когда они открывают страницу.Поэтому мне было интересно, есть ли какой-нибудь способ сделать развертывание, подобное WPF, который загружается на локальный компьютер только при изменении версии.1003 *

Большое спасибо

Ответы [ 2 ]

3 голосов
/ 24 мая 2011

Сначала и для большинства рассортируйте заголовки кэширования вашего веб-сервера. Обычно вы открываете папку ClientBin в диспетчере IIS и входите в раздел заголовка ответа HTTP. Установите срок действия примерно на 1 день (или если вы обновляете в течение обычного рабочего времени, установленного на 15 минут). Обратите внимание, что истечение срока действия контента не означает его повторную загрузку, но означает, что оно будет кэшировано перед использованием. Браузер проинформирует сервер о версии, которая у него есть в настоящее время, если срок его действия истек, и он может просто ответить «продолжайте и используйте, что он не изменился с момента последней проверки».

Для такой большой системы вы должны серьезно подумать о разделении приложения на несколько dll-проектов. Затем используйте функцию кэширования библиотеки приложений, которая находится в основных свойствах проекта приложений. Вам необходимо создать соответствующие файлы .extmap.xml для каждой из ваших библиотек. Многие из dll SDK и Toolkit уже имеют их. В результате отдельные файлы .zip для этих библиотек помещаются в папку ClientBin и не включаются в один большой Xap. Это позволяет разделить медленно перемещающийся / никогда не изменяющийся код на набор почтовых индексов и чаще заменять бизнес-код на другой набор. При обновлении приложения вы обновляете только измененные почтовые индексы, тем самым снижая нагрузку на загрузку новой версии. (Обратите внимание, что это работает только с приложениями на основе Inbrowser).

1 голос
/ 24 мая 2011

В опции проекта serverlight отметьте Уменьшить размер XAP с помощью кэширования библиотеки приложений.

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...