Stashbox by Peter Csajtai

<PackageReference Include="Stashbox" Version="5.14.1" />

 IParameterizedWrapper

public interface IParameterizedWrapper : IResolver
Represents a wrapper that can wrap a service with function parameters.
bool TryUnWrap(Type type, out Type unWrappedType, out IEnumerable parameterTypes)

Un-wraps the underlying service type from a wrapped type request.

Expression WrapExpression(TypeInformation originalTypeInformation, TypeInformation wrappedTypeInformation, ServiceContext serviceContext, IEnumerable<ParameterExpression> parameterExpressions)

Wraps the expression that describes the service.