Перезагрузка членства заменить Ninject с простым инжектором

Мне нужно добавить перезагрузку членства (RavenDb) в проект, который использует IOC Simple Injector

Ninject реализация

var config = MembershipRebootConfig.Create();
kernel.Bind<MembershipRebootConfiguration<HierarchicalUserAccount>>().ToConstant(config);
kernel.Bind<UserAccountService<HierarchicalUserAccount>>().ToSelf();   kernel.Bind<AuthenticationService<HierarchicalUserAccount().To<SamAuthenticationService<HierarchicalUserAccount>>();
kernel.Bind<IUserAccountRepository<HierarchicalUserAccount>>().ToMethod(ctx => new BrockAllen.MembershipReboot.RavenDb.RavenUserAccountRepository("RavenDb"));
kernel.Bind<IUserAccountQuery>().ToMethod(ctx => new BrockAllen.MembershipReboot.RavenDb.RavenUserAccountRepository("RavenDb"));

Реализация простого инжектора

container.Register(MembershipRebootConfig.Create);
container.Register<UserAccountService<HierarchicalUserAccount>>();
container.Register<AuthenticationService<HierarchicalUserAccount>, SamAuthenticationService<HierarchicalUserAccount>>();
container.Register<IUserAccountRepository<HierarchicalUserAccount>>(() => new RavenUserAccountRepository("RavenDb"), Lifestyle.Singleton);
container.Register<IUserAccountQuery>(() => new RavenUserAccountRepository("RavenDb"));

На ряду

container.Register<UserAccountService<HierarchicalUserAccount>>();

У меня есть ошибка Чтобы контейнер мог создавать UserAccountService, он должен содержать ровно один открытый конструктор, но имеет 2. Имя параметра: TConcrete

Спасибо за вашу помощь.

Ответы на вопрос(2)

Ваш ответ на вопрос