I was at a customer today and they had a quite interesting situation to show me, and here it is.
Let’s create these dummy entities:
And now let’s register them the same way they did and see what happens when trying to resolve a Person:
As you can see Windsor actually “resolves” both Address and Job as if they were a dependency, setting both of them as a new instance! I don’t really think this is a bug but it’s totally not what I expected…
Having interfaces in between (so IPerson, IAddress and IJob) and then trying to resolve IPerson solves the “problem” (so I get a person with null Address and Job).