2016-02-04 4 views
0

Как я могу использовать управление стилем Windsor, но у меня есть свой метод решения? На данный момент я зарегистрировать свою зависимость следующим образом:Замок Windsor разрешает экземпляр в пользовательском коде

_container.Register(Component.For<DbContext>() 
    .ImplementedBy<EntityContext>().DependsOn(Dependency.OnValue("connectionName", "EntityContext")) 
    .LifestylePerWebRequest()); 

Я хотел бы разрешить зависимость по следующим лямбда:

() => { 
    return new EntityContext("EntityContext"); 
} 

Как это может сочетаться?

+0

'вернуть _container.Resolve ();' –

+0

Я не уверен, что я описал мой вопрос хорошо. Но мне бы хотелось, чтобы этот код возвращал _container.Resolve (); 'для вызова моего метода лямбда. –

ответ

3

Использование UsingFactoryMethod чтобы определить, как создать экземпляр:

container.Register(Component.For<DbContext>() 
    .UsingFactoryMethod(() => new EntityContext("EntityContext")) 
    .LifestylePerWebRequest()); 
Смежные вопросы