Stashbox by Peter Csajtai

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

 ServiceRegistration

Represents a service registration.
public bool HasCondition { get; }

True if the registration contains any condition, otherwise false.

public bool HasScopeName { get; }

True if the registration is restricted to a named scope.

public Type ImplementationType { get; }

The implementation type.

The TypeInfo of the implementation type.

public bool IsDecorator { get; }

True if the registration is a decorator.

public bool IsResolvableByUnnamedRequest { get; }

True if the registration can used by an unnamed resolution request.

The registration context.

public int RegistrationId { get; }

The registration number.

public object RegistrationName { get; }

The registration id.

public bool ShouldHandleDisposal { get; }

True if the registration contains a disposable service which should be tracked.

public bool CanInjectIntoNamedScope(IEnumerable<object> scopeNames)

Checks that the registration can be injected into a named scope.

public IServiceRegistration Clone(Type implementationType, IObjectBuilder objectBuilder)

Clones the registration with new underlying type.

public Expression GetExpression(IContainerContext containerContext, ResolutionContext resolutionContext, Type resolveType)

Creates an expression for creating the resolved instance.

Checks whether the registration can be used for a current resolution.

public void Replaces(IServiceRegistration serviceRegistration)

Indicates that the current registration replaces another one, it copies the necessary information from the original.