Castle Windsor:如何为同一类型的不同属性指定不同的实现

时间:2015-04-15 23:24:53

标签: c# properties castle-windsor

说我上了这堂课:

public class Consumer
{
  public ISomeInterface A {get; set;}
  public ISomeInterface B {get; set;}
}

以及ISomeInterface的两种不同实现:

public class Alpha : ISomeInterface {...}
public class Bravo : ISomeInterface {...}

如何告诉Windsor将Consumer.A的{​​{1}}和Alpha的实例设置为Consumer.B的实例?

顺便说一句,Bravo(或我实际代码中的相应类型)不在我的控制之下,而是来自外部库。

Windsor的文档说明了如何通过使用Consumer进行装饰或抑制属性注入来抑制特定属性的属性注入。它还提到了继承[DoNotWire]的可能性 - 这是我的方案唯一的出路吗?或者我忽视了哪些更容易?

谢谢,

最高

0 个答案:

没有答案