2013-03-14 5 views
0

Я использую SCSF для определения структуры набора слабо связанных приложений и сервисов. Файл profilecatalog.xml описывает, какие плагины должны быть загружены, а также зависимость от служб. Это стандартная процедура и работает хорошо.Обновить приложение SCSF

Однако, я хотел бы включить возможность загрузки плагина во время выполнения. У меня есть некоторые плагины, которые занимают некоторое время, чтобы загрузить. И эти плагины используются редко. Поэтому я думаю, чтобы включить возможность загрузки этих плагинов во время выполнения, только когда это необходимо (Пользователь нажимает на элемент). Конечно, можно писать плагины таким образом, чтобы не замедлять время начала работы фреймворка. Но я не несу ответственности за какой-либо плагин, поэтому я пытаюсь решить эту проблему из фреймворка, не загружая плагин.

+1

Возможно, вы захотите напомнить людям, что такое SCSF! –

+0

Вы правы. Я мог бы немного расширить описание. Но я не знаю, если бы кто-нибудь мог мне помочь, не зная компанию Smart Client Software Factory. – Patrick

ответ

2

Вы можете динамически загружать модули SCSF, используя методы, описанные в этих статьях:

  1. http://blogs.southworks.net/mwoloski/2006/02/27/cabmodulesondemand/
  2. http://blogs.msdn.com/b/mszcool/archive/2005/12/20/505976.aspx
  3. http://smartclient.codeplex.com/discussions/222221

Одно ограничение, которое вы можете столкнуться, состоит в том, что модули не могут «разгружаться» динамически.

+0

Привет, спасибо. Я буду исследовать статьи. Я знаю, что разгрузка - это еще одна история. Но я в порядке с этим ограничением. Я просто хочу их загрузить. Я повышу свой пост. Если я найду подходящий ответ, я также проверю принятие. Благодаря! – Patrick

+0

Первые ссылки точно соответствуют тому, что я ищу. Однако, к сожалению, ссылка на исходный код сломана. Пример кода будет очень приятно видеть. – Patrick

+0

Пример в первой ссылке рассказывает об изменении файлов решений по умолчанию SCSF. Если вы работаете с существующим решением, вы сможете следить за ним и вносить те же изменения в свой проект. Уже есть комментарии в ссылке, которая является парочкой лет назад, которая запрашивает повторную загрузку образца, чтобы я не задерживал дыхание. Если вы столкнетесь с дополнительными проблемами, вы можете опубликовать их здесь, и я сделаю все возможное, чтобы помочь. – neverseenjack