2011-07-29 13 views
0

城ウィンザー登録 - 所与の実装UsingFactoryMethodにAddAdditionalInterfaces()()

public class IFoo { } 

public class IBar { } 

public class FooImpl : IFoo { } 

なぜこの作業を行います。

container.Register(
    Component.For<IFoo>() 
      .ImplementedBy<FooImpl>() 
      .Proxy.AddAdditionalInterfaces(typeof(IBar)) 
); 

そして、これはそうではない:

container.Register(
    Component.For<IFoo>() 
      .UsingFactoryMethod(kernal => new FooImpl()) 
      .Proxy.AddAdditionalInterfaces(typeof(IBar)) 
); 

とき登録後、我々はそれを主張する:

container.Resolve<IFoo>().IsAssignableFrom(typeof(IBar) 

答えて

0

これはサポートされていません(FactoryMethodActivatorはプロキシ処理をまったくサポートしていません)。私が推測する理由はないので、自由にお気軽にrequest that feature.

+0

私はそれをやるしかありません。ありがとう。 –