2013-03-10 3 views
0

Я пытаюсь сделать следующее с AutoFac (образцы взяты из here и here):Как я могу зарегистрировать этот интерфейс .NET с помощью AutoFac?

builder.Register(c => c.Resolve<IDocumentStore>().OpenSession())   
     .InstancePerLifetimeScope(); 

проблема, с текущей версией AutoFac, я получаю ошибку компиляции с c.Resolve

Может кто-то, пожалуйста, скажите мне, как я могу зарегистрировать IDocumentSession, который мне предоставлен методом IDocumentStoreOpenSession().

enter image description here

+2

, что проблема связана с R #, удалите R # кэша и повторно открыть решение. Если вы когда-нибудь столкнетесь с этой проблемой, и проект строит отлично, но вы получаете предупреждения независимо от того, проблема с R #. – Phill

ответ

2
builder.RegisterInstance(documentStore).As<IDocumentStore>(); 

builder.Register(x => x.Resolve<IDocumentStore>().OpenSession()) 
     .As<IDocumentSession>() 
     .InstancePerLifetimeScope(); 
Смежные вопросы