Регистрация асинхронной фабрики в Autofac
У меня есть класс Wallet, который я получаю из хранилища. Я'Я пытаюсь правильно зарегистрировать оба в Autofac, чтобы классы, использующие кошелек, могли получить правильный экземпляр. Проблема в том, что в хранилище используется асинхронный метод (возвращающий Task). Поддерживает ли Autofac такие случаи?
Это нет работа:
cb.RegisterType()
.As()
.SingleInstance();
cb.Register(async c => await c.Resolve().CreateAsync(App.WalletPath));
cb.RegisterType()
.AsSelf().
.SingleInstance();
Где-то в приложении у меня просто есть:
class ViewModel
{
public ViewModel(Wallet wallet)
{
//nothing fancy here
}
}
При звонкеcontainer.Resolve()
я получаю исключение, сказав, что кошелек не зарегистрирован.