Когда вы разрабатываете большое приложение Silverlight, которое разбивает его на множество мелких компонентов, это здравый смысл, чтобы сделать исходный файл XAP относительно небольшим и динамически загружать необходимые библиотеки DLL со стороны сервера по требованию.
Простым способом является загрузка (из WebClient) библиотеки DLL в программе во время выполнения в соответствии с URL-адресом, хранящимся в System.Windows.Application.Current.Host.Source (обычно), использование объекта Assembly и отражения механизм динамического разбора кода IL и извлечения информации в DLL, создания его экземпляра и использования. Но после этого процесса этот Dll все еще невидим для всего приложения.
Но этот путь кажется «локальным и временным», теперь я ищу «глобальный и вечный» способ, который может динамически загружать библиотеки DLL со стороны клиента, добавить этот Dll ко всему проекту (как добавить ссылку на этот проект в визуальной студии). Я надеюсь, что после загрузки приложение сможет использовать классы или что-то еще во вновь загруженном Dll, точно так же, как использовать те в DLL, которые изначально были включены в XAP, загруженный в самом начале, использовать их в любых потоках, хотя отражение все еще используется Я могу использовать эту DLL в любых потоках или в любом месте или в любое время после этой загрузки.
Я спрашиваю, может ли такая ленивая загрузка, я имею в виду, реальная загрузка, быть реализована в .NET silverlight или как я могу это сделать.
Это относительно сложно для меня, но, может быть, довольно легко для вас.
Заранее большое спасибо.