<PackageReference Include="castle.windsor" Version="2.5.2" />

KeySearchNamingSubSystem

When requesting a component by service, KeySearchNamingSubSystem first determines if more than one component has been registered for that service. If not, Default resolution occurs. If so, all of the registered keys for that service are processed through the provided Predicate to determine which key to use for service resolution. If no Predicate matches, the default resolution occurs.
protected readonly Predicate<string> keyPredicate

protected readonly IDictionary<Type, IList<string>> service2Keys

Initializes a new instance of the KeySearchNamingSubSystem class.

public KeySearchNamingSubSystem(Predicate<string> keyPredicate)

Initializes a new instance of the KeySearchNamingSubSystem class.