Stashbox by Peter Csajtai

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

 IParameterizedWrapper

public interface IParameterizedWrapper : IResolver
Represents a wrapper that can wrap a service with function parameters.
bool TryUnWrap(TypeInformation typeInformation, out TypeInformation 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.