9.22 Forwarded Types
优质
小牛编辑
130浏览
2023-12-01
Forwarded types are additional services exposed by a component. For example, given the following component:
public class FooBar : IFoo, IBar
{
public void DoFoo()
{
// some implementation
}
public void DoBar()
{
// some implementation
}
}
Windsor will let you expose this single component as both IFoo
and IBar
service.
//register FooBar as both IFoo and IBar with singleton lifestyle
var foo = container.Resolve<IFoo>();
var bar = container.Resolve<IBar>();
Debug.Assert(object.ReferenceEquals(foo, bar));
This can be done either via fluent registration API or XML configuration.