私は現在、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');
私はいつもボブを受け取ります。これは可能ですか、それとも何か間違っていますか?