Модуль, загружающийся с ModuleManager в призме

Поскольку вы сохраняете дату в секундах с 1 января 1970 года, решение будет использовать strftime :

select * 
from QuizHistory
where UtcNow > strftime('%s', 'now', '-1 day')

, т.е. с форматом %s (в секундах с 1970-01-01) для даты now с модификатором -1 дня

6
задан Gus Cavalcanti 22 December 2008 в 17:31
поделиться

1 ответ

1) У меня должен быть moduleManager в качестве параметра в конструкторе моего MenuModuleView?

Технически Вы могли. Практически говорящий, хотя, если Вы делаете это, Вы все еще захотите определить конструктора по умолчанию для своего представления. Иначе Ваше представление не будет работать в разработчиках. Поэтому я рекомендую, чтобы свойства использовались для передачи в зависимостях компонентам UI.

2) Как я получаю каталог, доступный из MenuModuleView для перечисления доступных модулей?

Вы зависели бы от Призмы IModuleEnumerator интерфейсное и внедрение зависимости будет заботиться о предоставлении перечислителя модуля к Вашему представлению. Принятие Вы используете Призму с контейнером Единицы, который выглядел бы примерно так:

[Dependency]
public IModuleEnumerator ModuleEnumerator 
{
    get; set;
}

3) От MenuModuleView, поскольку я перечисляю через модули, я создаю кнопки, присваивая ModuleInfo Свойству тегов кнопки. Таким образом, у меня есть только одно событие щелчка для загрузки модуля. Это корректно? Это чувствует запах небольшой работы-aroundish мне..

Я предложил бы, чтобы Вы имели каждое повышение кнопки та же команда WPF и вместо этого присвоились ModuleInfo к Button CommandParameter свойство. Снова, Призма имеет инфраструктуру, чтобы помочь Вам сделать это чисто в составном сценарии. Посмотрите DelegateCommand класс.

Как заключительное примечание, знать, что, пока Вы можете лениво загружать свои модули, Вы не сможете разгрузить их. Для этого Вы потребуете AppDomain изоляция, которая является целым другим чайником рыбы.

7
ответ дан 17 December 2019 в 00:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: