2014-04-29 4 views
1

Следующий код не работает на StructureMap 3:StructureMap 3 Изменение перерыв

x.For<Environment>() 
    .LifecycleIs(StructureMap.Pipeline.Lifecycles.GetLifecycle(InstanceScope.HttpContext)) 
    .Use(c => Environment.GetEnvironment("APP")); 
x.SelectConstructor(() => new HelpController()); 

InstanceScope.HttpContext не работает StructureMap 3

SelectConstructor() не работает на StructureMap 3

ответ

4

"Новый" синтаксис для Lifecycles, который также доступен в Structuremap 2, приведен ниже:

x.For<Environment>() 
    .LifecycleIs<HttpContextLifecycle>() 
    .Use(c => Environment.GetEnvironment("APP")); 

EDIT:

Замена SelectConstructor теперь под PolicyExpression

x.Policies.ConstructorSelector(...); 

Там это изменение пути ConstructorSelector работ. Лучше всего взглянуть на Test source, чтобы увидеть, как он используется.

+0

Это исправило проблему с изменением обрыва экземпляра InstanceScope.HttpContext. Благодарю. –

+0

Извините, я пропустил часть вопроса 'SelectConstructor'. Проверьте мое изменение для ответа. Благодарю. – Xenolightning

+0

Спасибо, и эта ссылка на тестовый источник очень полезна! –

Смежные вопросы