Stashbox by Peter Csajtai

<PackageReference Include="Stashbox" Version="3.1.0-preview-541" />

 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.

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 Func<MemberInfo, bool> MemberInjectionFilter { get; }

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

public object Name { get; }

Name of the registration.

public object NamedScopeRestrictionIdentifier { get; }

The scope name set by InNamedScope and InScopeDefinedBy to tell where this registration must used.

public bool ReplaceExistingRegistration { get; }

Indicates that the current registration should replace an existing one.

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.