Skip to content

Remove obsolete class TypeBasedOverride #201

Open
@ENikS

Description

@ENikS

Description

Class TypeBasedOverride allows targeting overrides to specific type. It creates a wrapper around regular ResolverOverride instance and sets Target during initialization.

Problem

This design creates performance and memory overhead during execution.

Solution

Type ResolverOverride has built in mechanisms to target specific type. The target could be specified either by passing Target parameter to constructor or by calling OnType() method.

// Wrong way
            var param = new ParameterOverride("injectedObject", overrideValue);
            var decorator = new TypeBasedOverride(typeof(TheType), param);

            var result = container.Resolve<IForToUndergoeInject>(decorator);

// Correct way
            var param = new ParameterOverride("injectedObject", overrideValue).OnType<TheType>();
            var result = container.Resolve<IForToUndergoeInject>(param);

Impact

Legacy code requires refactoring.

Metadata

Metadata

Assignees

Labels

Enhancement 🔨Improvement of existing featuresreleaseRelease branch

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions