Stashbox by Peter Csajtai

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

 RegistrationContext

public class RegistrationContext
Represents the state of a scoped registration.

Contains the additional service types the current registration mapped to.

Attribute condition collection of the registration.

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 Delegate ContainerFactory { get; }

Container factory of the registration.

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 Finalizer { get; }

The cleanup delegate.

public Delegate FuncDelegate { get; }

Holds the func delegate, if the registration is a factory.

public Delegate Initializer { get; }

The initializer delegate.

public Dictionary<string, object> InjectionMemberNames { get; }

Member names which are explicitly set to be filled by the container.

public IEnumerable<KeyValuePair<string, object>> InjectionParameters { get; }

Injection parameters of the registration.

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.

public bool ReplaceExistingRegistration { get; }

Indicates that the current registration should replace an existing one.

Indicates that the current registration should replace an existing one but only if there is an existing one to replace.

public Func<TypeInformation, bool> ResolutionCondition { get; }

Resolution condition of the registration.

The selected constructor if any was set.

public Delegate SingleFactory { get; }

Parameterless factory of the registration.

public Type TargetTypeCondition { get; }

Target type condition of the registration.