Акавач инициация и регистрация константы в Prism для DI - PullRequest
0 голосов
/ 12 апреля 2020

Я использую Akavache и хотел бы зарегистрировать константу BlobCache.LocalMachine, чтобы при вводе IBlobCache в конструктор моих моделей просмотра он просто брал его.

Я считаю, что эквивалент Ninject:

Bind<Akavache.IBlobCache>().ToConstant(Akavache.BlobCache.LocalMachine);

Что я хочу сделать:

readonly IBlobCache _cache;
// ...
public MainViewModel(INavService navService, IBlobCache cache)
    : base (navService)
{
    _cache = cache;
}

Наконец, я вижу противоречивую информацию о том, что делать, когда я "выхожу" из своего приложения. Является ли правильная последовательность:

_cache.Shutdown()

или

_cache.InvalidateAll()

1 Ответ

0 голосов
/ 12 апреля 2020

Возможно, вы искали RegisterInstance:

containerRegistry.RegisterInstance<Akavache.IBlobCache>( Akavache.BlobCache.LocalMachine );

Это заставит контейнер вводить LocalMachine (во время регистрации) всякий раз, когда требуется IBlobCache.

...