Stashbox by Peter Csajtai

<PackageReference Include="Stashbox" Version="4.1.0-preview-677" />

 RegistrationContext

public class RegistrationContext
Represents the state of a scoped registration.

The async initializer delegate.

public bool AutoMemberInjectionEnabled { get; }

True if auto member injection is enabled on this instance.

public Func<MemberInfo, bool> AutoMemberInjectionFilter { get; }

A filter delegate used to determine which members should be auto injected and which are not.

The auto member injection rule for the registration.

public object[] ConstructorArguments { get; }

The arguments of the selected constructor if any was set.

The constructor selection rule.

public object DefinedScopeName { get; }

The name of the scope this registration defines.

public Dictionary<object, object> DependencyBindings { get; }

Dependency names or types that are bound to named registrations.

public object ExistingInstance { get; }

The already stored instance which was provided by instance or wireup registration.

public Delegate Factory { get; }

Container factory of the registration.

public Type[] FactoryParameters { get; }

Parameters to inject for the factory registration.

public Action<object> Finalizer { get; }

The cleanup delegate.

public Delegate FuncDelegate { get; }

The delegate to resolve when the registration is a 'Func{}'.

public Delegate Initializer { get; }

The initializer delegate.

public bool IsFactoryDelegateACompiledLambda { get; }

Flag that indicates the passed factory delegate is a compiled lambda from Expression.

public bool IsLifetimeExternallyOwned { get; }

True if the lifetime of the service is owned externally.

public bool IsWireUp { get; }

If true, the existing instance will be wired into the container, it will perform member and method injection on it.

public LifetimeDescriptor Lifetime { get; }

Lifetime of the registration.

public object Name { get; }

Name of the registration.

The selected constructor if any was set.