Можно ли зарегистрировать один и тот же класс / интерфейс несколько раз в Spring4D?
В настоящее время я играю с Spring4D и думаю, что это круто. Я пытаюсь добиться следующего
GlobalContainer.RegisterComponent<TPerson>.Implements<IPerson>('Normal');
GlobalContainer.RegisterComponent<TPerson>.Implements<IPerson>('TestData').DelegateTo(
function: TPerson
begin
result := TPerson.Create;
result.SetFirstName('Bob');
result.SetSurname('Smith');
end
);
С TPerson/IPerson, имеющим очевидные определения. Но независимо от того, если я попробую
Person := ServiceLocator.GetService<IPerson>('Normal');
или же
Person := ServiceLocator.GetService<IPerson>('TestData');
Я всегда получаю Боб, это возможно, или я делаю что-то не так?