Динамическая загрузка Silverlight XAP - PullRequest
1 голос
/ 01 февраля 2011

У меня есть четыре приложения Silverlight 4, каждое в своем собственном проекте Visual Studio, для которого я хочу написать «оболочку» для размещения их так, чтобы они отображались пользователю как одно приложение. Чтобы минимизировать время загрузки, я буду загружать XAP и поддерживающие DLL динамически. В итоге у меня будет 5 приложений - оболочка и четыре вложенных приложения. Теперь моя проблема:

Все мои приложения ссылаются на пакет Telerik, и это довольно значительная загрузка. Когда я создаю свои приложения, библиотеки Telerik DLL архивируются в каждый XAP (как и ожидалось). Поэтому, даже если я динамически загружаю XAP, библиотеки DLL Telerik будут загружаться несколько раз, по одному для каждого XAP.

Итак, как мне сделать так, чтобы DLL-библиотеки Telerik загружались только один раз (скажем, Shell) и использовались всеми подпрограммами?

1 Ответ

1 голос
/ 01 февраля 2011

Если вы войдете в окно «Свойства» различных проектов Silverlight и перейдете на вкладку «Silverlight», вы увидите параметр «Уменьшить размер XAP с помощью кэширования библиотеки приложения».Если вы выберете это, библиотеки поддержки (в данном случае Telerik) будут упакованы в отдельные файлы .zip, которые можно скачать отдельно.См. здесь для получения дополнительной информации, включая инструкции о том, как настроить свои собственные сборки для такого рода поведения.(Полагаю, хотя я и не проверял, что Telerik сделал это с помощью своих элементов управления.)

...