2009-10-09 2 views
1

Я нахожу одну из лучших особенностей Ninject - привязку на основе условностей. например.Можете ли вы сделать привязку на основе соглашений с StructureMap 2.5.3?

Bind<IConfigurationSource>().To<RemoteConfigurationSource>() 
.Only(When.Context.Target.Name.BeginsWith("remote")); 

Bind<IConfigurationSource>().To<LocalConfigurationSource>() 
.Only(When.Context.Target.Name.BeginsWith("local")); 

http://ninject.codeplex.com/Wiki/View.aspx?title=Conventions-Based%20Binding&referringTitle=Home

Возможно ли это в StructureMap 2.5.3?

Благодаря

ответ

0

StructureMap имеет различные способы динамического определения, какой конкретный тип возвращаемых на основании запроса (TheDefault.Is.ConstructedBy, TheDefault.Is.Conditional и т.д.).

Однако, (с 2,5) ни один из них не имеет доступа к имени параметра, которое заполняется, как в вашем примере.