For example, I have registered class C1 with one parameter in constructor of type System.Type
. I have another class (C2) with injected parameter of type C1. And I want receive typeof(C2)
automatically in C1 constructor. Is it possible in some way?
Example code:
public class C1
{
public C1(Type type) {}
// ...
}
public class C2
{
public C2(C1 c1) {}
// ...
}
// Registration
containerBuilder.Register(???);
containerBuilder.Register<C2>();
This should do it:
Where:
Any component that takes a
System.Type
parameter will get the type of the requestor passed to it (if any.) A possible improvement might be to use aNamedParameter
rather thanTypedParameter
to restrict theType
parameters that will be matched to only those with a certain name.Please let me know if this works, others have asked about the same general task and this would be good to share with them.