Stashbox by Peter Csajtai

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

 Lifetimes

public static class Lifetimes
Contains all the built-in lifetime managers.
public static readonly LifetimeDescriptor PerRequest

Per resolution request lifetime.

public static readonly LifetimeDescriptor PerScopedRequest

Per scoped request lifetime, that re-uses the produced instance within a scoped service's resolution tree.

public static readonly LifetimeDescriptor Scoped

Scoped lifetime.

public static readonly LifetimeDescriptor Singleton

Singleton lifetime.

public static readonly LifetimeDescriptor Transient

Transient lifetime.

public static LifetimeDescriptor Auto(LifetimeDescriptor boundaryLifetime)

Produces a lifetime that aligns to the lifetime of the resolved service's dependencies. When the underlying service has a dependency with a higher lifespan, this lifetime will inherit that lifespan up to a given boundary.

public static LifetimeDescriptor NamedScope(object name)

Produces a NamedScope lifetime.