私はこのコードを持っています:
using (container.BeginLifetimeScope())
{
RenderWord instruction = new RenderWord();
var instances = container.GetAllInstances<IInstructionHandler<RenderWord>>();
var firstInstance = result.First();
}
instances
タイプですIEnumerable<IInstructionHandler<RenderWord>>
firstInstance
IInstructionHandler<RenderWord>
実際には、別のデコレーターを装飾する別のデコレーターを装飾するデコレーターのインスタンスであるタイプです...
実行時の実際のクラスinstances
は 型ContainerControlledCollection<IInstructionHandler<RenderWord>>
であり、このContainerControlledCollection
クラスは非常に有用な情報 (基になるImplementationType
.
デコレータのチェーンの下にある基本実装タイプを発見できるようにしたいので、実行時にContainerControlledCollection
またはに到達する方法はありますか。producers[0].Value.ImplementationType